我想在 2 个兄弟路由 :Timesheets
和Clients
.
我想尝试使用“纯”React(无 Flux 架构)可以走多远。
这个例子有效,但我有一个错误:browser.js:49 Warning: [react-router] You cannot change <Router routes>; it will be ignored
所以,它似乎不喜欢异步props。
constructor(props) {
super(props);
this.state = {
clients : []
}
}
componentDidMount() {
fetch("clients.json")
.then(response => response.json())
.then(clients => this.setState({ clients }));
}
render() {
return (
<Router history={browserHistory}>
<Route path="/" component={Header} >
<Route path="timesheet" component={() => (<Timesheets {...this.state} />) }/>
<Route path="clients" component={() => (<Clients {...this.state} />) }/>
</Route>
</Router>
);
}
是否可以将异步props发送到每条路线?
或者是否可以在父路由(Header
组件)中设置整个状态,然后从每个子路由(Timesheets
和Clients
组件)访问这个状态?