我想利用react router的onEnter
处理程序来提示用户在进入受限路由时进行身份验证.
到目前为止,我的routes.js
文件看起来像这样:
import React from 'react';
import { Route, IndexRoute } from 'react-router';
export default (
<Route path="/" component={App}>
<IndexRoute component={Landing} />
<Route path="learn" component={Learn} />
<Route path="about" component={About} />
<Route path="downloads" component={Downloads} onEnter={requireAuth} />
</Route>
)
理想情况下,我希望我的requireAuth
函数是一个redux操作,可以访问存储和当前状态,其工作原理如下:store.dispatch(requireAuth())
.
不幸的是,我无法访问此文件中的存储.我不认为我能在这种情况下使用connect
来访问我想要的相关操作.我也不能从创建store 的文件中删除import store
,因为这在应用程序首次加载时是未定义的.