Package for implementing barrel exporting in React, Next JS.
npm install barrel-exporterPackage for implementing barrel exporting in React, Next JS.
_A barrel is a way to rollup exports from several modules into a single
convenient module. The barrel itself is a module file that re-exports selected
exports of other modules._
---
``console`
$ npm install --save-dev barrel-exporter
Add a script in package.json
You can set any custom script name like:
`json`
"scripts": {
"exporter" : "barrel-exporter"
}
Run command in console that will create index.js file in the folder where you
want to implement barrel exporting
`console`
$ npm run exporter --path=src/pages
Use --ts flag to get all the exports in index.ts file
`console`
$ npm run exporter --path=src/pages --ts
Set path in command where you want barrel exporting.
After executing the command, an index.js file is created with multiple named
export at the given path. ( in this case: src/pages/index.js )
`js`
export { AuthPage } from './AuthPage.js';
export { HomePage } from './HomePage.js';
Without implementing barrel exporting, files will be imported one by one from
different source modules.
pages
|---AuthPage.js
|---HomePage.js
`js`
import AuthPage from './pages/AuthPage';
import HomePage from './pages/HomePage';
With implementing barrel exporting, files will be imported all at once from a
single source module.
pages
|---index.js
|---AuthPage.js
|---HomePage.js
`js``
import { AuthPage, HomePage } from './pages';
If you want to implement barrel exporting then you need to create Index.js file
and then manually export all the files with correct path. But with **Barrel
Exporter**, Index.js file is automatically created with correct exporting and
path. Isn't it amazing!!
- Option provided to overwrite already existing index file
- .js, .jsx, .ts, and .tsx file extension supported
---