The React Router library exposes all methods on the top level import, but
allows developers to use imports referencing files directly inside /lib
,
which can result in smaller bundle sizes as it doesn't import all of the
Router's dependencies.
See here for more information: Minimizing Bundle Size.
This plugin can be added to your .babelrc
file and automatically transform
ES2015 imports to their size optimized counterpart.
In
import { Route, IndexRoute } from 'react-router';
Out
import Route from 'react-router/lib/Route';
import IndexRoute from 'react-router/lib/IndexRoute';
Note This plugin is built for babel 6 and does not work with babel 5.
npm install --save-dev babel-plugin-transform-react-router-optimize
.babelrc
{
"plugins": ["transform-react-router-optimize"]
}
babel --plugins transform-react-router-optimize script.js
require('babel-core').transform('code', {
plugins: ['transform-react-router-optimize']
});
MIT