React:无法使用带有react-router的工具栏更改组件

时间:2018-07-30 16:20:30

标签: reactjs react-router

我有一个工具栏,其中包含一个搜索栏和一些使用history.push()更改路径的按钮。我遇到的问题是路径已更改,但是我在<Route />中指定的相关组件无法呈现。

我想这是我的Route的结果,其工具栏不是同一路由器的一部分。如果我尝试将工具栏放到中,则只会显示工具栏。

<CoreLayout store={store}>
  <Route {...Toolbar(store)} />
  <BrowserRouter>
     <Switch>
        <Route ... />
        <Route ... />
        <Route ... />
     </Switch>
  </BrowserRouter>
</CoreLayout

我的CoreLayout容器在每个页面中都包含我想要的页眉,页脚等。

1 个答案:

答案 0 :(得分:0)

该组件必须是同一路由器提供商IE的子组件:

<Provider store={store}>
  <LanguageProvider messages={messages}>
    <ConnectedRouter history={history}>
      <ErrorBoundary>
        <App />
      </ErrorBoundary>
    </ConnectedRouter>
  </LanguageProvider>
</Provider>,