React应用中提供者和路由器的顺序

Sam*_*Sam 6 reactjs react-router react-router-v4 react-router-dom

我正在做我的应用程序做出反应一个SPA和增加React Router 4react-router-dom它。当前,我到home组件的入口点如下所示:

render (
    <Provider store={store}>
        <App>
            <Home />
        </App>
    </Provider>,
    document.getElementById('app')
);
Run Code Online (Sandbox Code Playgroud)

对于另一个模块,我有一个不同的入口点,而不是组件,我有一个不同的入口点,<Home />但是其余的看起来几乎相同。

两个问题:

  1. 是否<BrowserRouter>应该换个方向<Provider store={store}>或其他方式是否重要?看起来好像react-router-dom不使用redux存储,但我仍然认为<Provider>应该包装<BrowserRouter>-参见下面的代码。
  2. 我还要删除“ Home”组件,因为路由器将根据URL决定加载哪个组件。

这是新的代码:

render (
    <Provider store={store}>
        <BrowserRouter>
            <App />
        </BrowserRouter>
    </Provider>,
    document.getElementById('app')
);
Run Code Online (Sandbox Code Playgroud)

我处理这个权利吗?

jok*_*kka 9

没关系。

他们不相互依赖。

看看他们的实现,特别是他们的渲染方法。

Redux 提供者, 反应路由器。

他们大多只是声明了几个contextTypes,并渲染了孩子。