我开始在我的项目中使用react-boilerplate,我试图找出路由在那里的工作原理。你能解释一下example in docs或example in app吗?
getComponent()
相对于简单的react-router路由定义<Route path='somepath' component={SomeContainer} />
而言功能如此之大?injectReducers
和injectSagas
? 谢谢!
path: '/posts/:slug',
name: 'post',
getComponent(nextState, cb) {
const importModules = Promise.all([
import('containers/Post/reducer'),
import('containers/Post/sagas'),
import('containers/Post'),
]);
const renderRoute = loadModule(cb);
importModules.then(([reducer, sagas, component]) => {
injectReducer('post', reducer.default);
injectSagas(sagas.default);
renderRoute(component);
});
importModules.catch(errorLoading);
},
答案 0 :(得分:1)
injectReducer
和injectSagas
用于代码拆分。代码说“当这条路线被调用时,加载这些减速器和传奇”。 Webpack查看它并相应地将代码拆分为不同的文件。
如果它是一个小应用程序不是真的必要,但如果它是巨大的,代码分割可能有助于保持初始加载时间。