我正在使用react-router v3.0.2进行代码拆分。我提出了以下问题:
如果未传递userRole
url param,我需要进行重定向,但replace()
函数未触发,控制台中没有错误。
export default (store) => {
return <Route
path="project(/:userRole)"
onEnter={(nextState, replace, cb) => {
if (__CLIENT__) {
const res = validateUserRole(nextState, replace);
if(res === true){
dispatchProjectList(store, nextState, replace, cb).then(() => {
cb();
}).catch((e) => {
console.error(e.stack);
cb();
});
}
else {
replace(`/project/${res}`);
}
}
cb();
}}
getComponent={(location, cb) => {
System.import('../../views/project/components/Project')
.then((module) => {
cb(null, module.default);
})
.catch(errorLoading);
}}
/>