【发布时间】:2016-02-28 11:14:42
【问题描述】:
通过我的 REST api 登录后,我正在使用 react-router 导航到某个页面。
这是我的代码示例,试过这个:
export default {
loginUser: (jwt, rememberMe) => {
var savedJwt = localStorage.getItem('jwt');
AppDispatcher.dispatch({
actionType: 'LOGIN_USER',
jwt: jwt
});
if (savedJwt !== jwt) {
browserHistory.push('/');
localStorage.setItem('jwt', jwt);
}
},
这基于 react-router 教程。
export default {
loginUser: (jwt, rememberMe) => {
var savedJwt = localStorage.getItem('jwt');
contextTypes: {
router: React.PropTypes.object
}
AppDispatcher.dispatch({
actionType: 'LOGIN_USER',
jwt: jwt
});
if (savedJwt !== jwt) {
this.context.router.push('/')
localStorage.setItem('jwt', jwt);
}
},
但是,两者都不起作用。第一个抱怨“在 TypeError 中记录错误:无法读取未定义的属性 'push'”,而第二个抱怨“在 TypeError 中记录错误:无法读取未定义的属性 'context'”。
谁能帮我解决这个问题?被困在这里好几个小时了。谢谢!
【问题讨论】:
-
你有没有从 react-router 导入 browserHistory。
import { browserHistory } from 'react-router'还有什么版本的 react-router 用的?
标签: javascript reactjs react-router