react-router与代码分裂,replace()无效

时间:2017-03-14 12:25:08

标签: reactjs webpack redux react-router react-router-redux

我正在使用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);
    }}
    />

0 个答案:

没有答案