gpt4 book ai didi

javascript - React-router browserHistory.push 不重定向

转载 作者:行者123 更新时间:2023-11-29 16:06:59 25 4
gpt4 key购买 nike

尝试使用 browserHistory.push 方法以编程方式更改我的路线。

它会改变路线(根据浏览器地址栏)但不会更新 View 。

这是我的代码 应用程序.jsx

const AppStart = React.createClass({

render: function() {
return (
<MuiThemeProvider>
<Router history={hashHistory}>
<Route path="/" component={Main}>
<Route path="experiences" component={Experiences} />
<Route path="people" component={Profiles} />
<Route path="login" component={Login} />
<IndexRoute component={Home}/>
</Route>
</Router>
</MuiThemeProvider>
);
}
});

ReactDOM.render(
<AppStart />,
document.getElementById('app')
);

组件:

handleLoginRedirect(e) {
browserHistory.push('/experiences');
},

render() {
return (
<div className='row'>
<div className='col-sm-10 col-sm-offset-1'>
<form role='form'>
<RaisedButton label="Redirect" onClick={this.handleLoginRedirect} />
</form>
</div>
</div>
);

最佳答案

您的路由器配置使用 hashHistory当你推到 browserHistory 时.

很容易错过这样的事情,这是可以理解的。

  • 替换hashHistorybrowserHistory在你的Router像这样:

<Router history={browserHistory}>

完整片段:

const AppStart = React.createClass({

render: function() {
return (
<MuiThemeProvider>
<Router history={browserHistory}>
<Route path="/" component={Main}>
<Route path="experiences" component={Experiences} />
<Route path="people" component={Profiles} />
<Route path="login" component={Login} />
<IndexRoute component={Home}/>
</Route>
</Router>
</MuiThemeProvider>
);
}
});

关于javascript - React-router browserHistory.push 不重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38908503/

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