gpt4 book ai didi

javascript - react 路由器无法读取未定义的属性 'push'

转载 作者:行者123 更新时间:2023-12-04 17:53:13 25 4
gpt4 key购买 nike

在通过我的 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’”。

谁能帮我解决这个问题?被困在这里几个小时。谢谢!

最佳答案

无论出于何种原因,调用 this.context.router.push('/') 都不起作用。但是,当使用 browserHistory.push('/') 时,url 会发生变化。此时,如果您刷新页面,它应该会更改页面。然而,根据我到目前为止所读的内容,我不知道使用 react 路由器从您的服务器加载另一个页面是最好的方法。

关于javascript - react 路由器无法读取未定义的属性 'push',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35681758/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com