使用 React.StrictMode 标签将 React-Redux 添加到 React 应用程序

Bla*_*ell 9 javascript reactjs react-redux

<React.StrictMode>默认情况下,最新的 create-react-app标签包裹在组件周围。我看到的每个将 react-redux 添加到应用程序的示例中都没有 React.StrictMode 标签。

这是我所做的:

<Provider store={store}>
  <React.StrictMode>
    <App />
  </React.StrictMode>
</Provider>,
document.getElementById('root')
Run Code Online (Sandbox Code Playgroud)

但是,我总是看到:

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

我阅读了StrictMode的用途。我认为它有助于调试和洞察应用程序中的问题,所以我想在开发时保留它。我所做的是否正确,或者 Provider 是否应该像所有示例中那样完全替换它?

小智 18

React.StrictMode也应该包装整个应用程序,包括提供者。所以改变你的代码如下:

  <Provider store={store}>
    <React.StrictMode>
      <App />
    </React.StrictMode>
  </Provider>,
  document.getElementById('root')
Run Code Online (Sandbox Code Playgroud)

  <React.StrictMode>
    <Provider store={store}>
      <App />
    </Provider>
  </React.StrictMode>,
  document.getElementById('root')
Run Code Online (Sandbox Code Playgroud)