【发布时间】:2017-07-16 08:44:45
【问题描述】:
我正在使用 React Router 和 Webpack 2 对我的 JavaScript 文件进行代码拆分,如下所示:
export default {
path: '/',
component: Container,
indexRoute: {
getComponent(location, cb) {
if (isAuthenticated()) {
redirect();
} else {
System.import('../landing-page/LandingPage')
.then(loadRoute(cb))
.catch(errorLoading);
}
},
},
childRoutes: [
{
path: 'login',
getComponent(location, cb) {
System.import('../login/Login')
.then(loadRoute(cb))
.catch(errorLoading);
},
},
{ /* etc */
}
};
此捆绑包的哪些结果:
public/
vendor.bundle.js
bundle.js
0.bundle.js
1.bundle.js
2.bundle.js
这意味着最终用户只能根据他/她所在的路线获取他/她需要的 JavaScript。
问题是:对于 css 部分,我没有找到任何资源来做同样的事情,即根据用户的需要拆分 CSS。
有没有办法用 Webpack 2 和 React Router 做到这一点?
【问题讨论】:
-
你看到 CSS 代码拆分的文档了吗? webpack.js.org/guides/code-splitting-css
-
@JakobLind 是的,我做到了。在文档中,唯一的方法是有多个条目。但是,如果我使用 React Router 并且只有一个条目,我怎么能有多个条目。
标签: reactjs webpack webpack-2 css-modules extract-text-plugin