我需要尽早从后端抓取JWT token
。在哪里进行API调用的正确位置,以便我在React/Readux
应用的生命周期的早期处理这个问题?
答案 0 :(得分:0)
您可以向routes.js
添加一个函数,该函数将进行API调用以获取令牌。然后,您可以在进入应用程序时调用此函数(通过react-router onEnter
属性)。
如果您使用的是react-router< v4,否则this帖子可以提供帮助。
...
function requireToken(){
// Make API call to get token
};
export default(
<Router history={browserHistory}>
<Route path="login" component={LoginPage} />
<Route path="/" component={App} onEnter={requireToken}>
<Route path="/dashboard" component={Dashboard} />
...
</Route>
</Router>
)
答案 1 :(得分:0)
我觉得你的反应和减少方法有些不妥。即使没有令牌,您的应用也应该呈现正常。如果你有一个商店(或者可能是减速器),这取决于该令牌,这是不正确的。我建议重新考虑自举,并使其不需要外部数据。这将改善用户体验和开发人员的体验,因为这会让你在单向思考。