zsa*_*ayn 4 javascript reactjs react-router
尝试使用browserHistory.push方法以编程方式更改我的路线。
它将更改路由(每个浏览器地址栏)但不会更新视图。
这是我的代码 App.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')
);
Run Code Online (Sandbox Code Playgroud)
成分:
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>
);
Run Code Online (Sandbox Code Playgroud)
您的路由器配置hashHistory在您推进时使用browserHistory。
很容易错过这样的事情,这是可以理解的。
hashHistory用browserHistory在你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>
);
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13531 次 |
| 最近记录: |