Reactjs React Router Redux-从IndexRoute重定向时的无限循环
我的路线如下:Reactjs React Router Redux-从IndexRoute重定向时的无限循环,reactjs,react-router,infinite-loop,react-router-redux,Reactjs,React Router,Infinite Loop,React Router Redux,我的路线如下: render( <Provider store={store}> <Router history={history}> <Route path="/" component={App}> <IndexRoute component={SEOModuleComponent} onEnter={(nextState, replace) => { replace({ pathName: 'getSta
render(
<Provider store={store}>
<Router history={history}>
<Route path="/" component={App}>
<IndexRoute component={SEOModuleComponent} onEnter={(nextState, replace) => { replace({ pathName: 'getStarted' }); }} onChange={() => {}} />
<Route path="getStarted" component={GetStartedView} onChange={() => {}} />
</Route>
</Router>
</Provider>,
document.getElementById('app-container')
);
渲染(
{replace({pathName:'getStarted'});}}}onChange={()=>{}}/>
{}} />
,
document.getElementById('app-container'))
);
当我加载应用程序时,它会进入一个无限循环,不断尝试重定向到“getStarted”
有人知道为什么会发生这种情况吗?为什么不使用组件
<Router history={history}>
<Route path="/" component={App}>
<IndexRedirect to="/getStarted" />
<Route path="getStarted" component={GetStartedView} onChange={() => {}} />
</Route>
</Router>
{}} />
问题在于:
(nextState,replace)=>{replace({pathName:'getStarted'});}
因为“路径名”
不是“路径名”
(小写)-react路由器历史模块的内部工作默认重定向到当前路径“/”
,从而创建循环
这里打开了一个问题:因为我的实际应用程序中的
onEnter
逻辑并不像示例中提供的那样简单。