反应路由器警告

时间:2016-12-20 13:00:36

标签: reactjs

我正在使用反应路由器并收到此警告:

[react-router] You cannot change <Router routes>; it will be ignored.

虽然一切正常但我仍然无法摆脱这种警告。任何人都能说出可能导致此类警告的原因吗?

这是我路由器的一个例子

render () {
return (
  <div>
    <Router history={this.history}>
      <Route path='/' component={PageLanding} />
      <Route path='/test' onEnter={CheckUser.CheckUser} component={PageTest} />
      <Route path='*' component={NotFoundPage} />
    </Router>
  </div>
)
}

1 个答案:

答案 0 :(得分:1)

如果您使用的是react-router“^ 3.0.2”,请使用以下结构

<Router history={hashHistory}>
    <Route path='/' component={mainComponentName} />
    <Route path='/componentRefName' component={componentName} />
    <Route path='/componentRefName' component={componentName} />
</Router>,

如果您使用react-router“4.0”,请使用以下结构

<HashRouter>
    <div>
        <Route exact path="/" component={mainComponentName} ></Route>
        <Route path="/componentRefName" component={componentName}></Route>
        <Route path="/componentRefName" component={componentName}></Route>
    </div>
</HashRouter>