我正在加载带有url参数的页面,然后使用browserhistroy.push()重置为根url,这是第一次不起作用,并且在我看到日志时props.param显示了相同的旧url路径名。第二次,当我再次单击它时,它按预期运行。 注意:通过“ react-router”将React与redux一起使用。 码: route.js
{
path: '/:menuitem',
name: 'Products',
getComponent(nextState, cb) {
const importModules = Promise.all([
import('views/Products/modules/reducer'),
import('views/Products/modules/sagas'),
import('views/Products'),
]);
const renderRoute = loadModule(cb);
importModules.then(([reducer, sagas, component]) => {
injectReducer('search', reducer.default);
injectSagas(sagas.default);
renderRoute(component);
});
importModules.catch(errorLoading);
},
},
在组件中:设置参数/ URL
var urlname = options[secIndex][itemIndex].name;
urlname = urlname.replace(/\s+/g, '-').toLowerCase();
console.log(urlname);
browserHistory.push('/'+urlname);
this.props.leftStripActions.onFilterByLens(options[secIndex][itemIndex]);
重置为root:
browserHistory.push('/'); [这是第一次无效enter code here
]
任何帮助将不胜感激!!!
答案 0 :(得分:0)
use => this.props.history.push(url)