在 Material UI redux 中处理暗模式

Handle Dark mode in Material UI redux

我有一个带有 Material UI 的 React 应用程序。暗模式基本上可以工作,但是每当我尝试在从 redux 状态数据呈现页面的页面上更改暗模式状态时,整个页面都会崩溃。我假设是因为它失去了 redux 状态:

Warning: Failed prop type: The prop `items` is marked as required in `WarehouseTable`, but its value is `null`.

这是正确的,因为 Theme 包装了整个应用程序,因此所有子对象都会重新呈现自己。

我不知道为什么不保留 redux 状态。为什么好像redux状态丢失了?

我该如何处理?

您可以尝试在 mui 包装器周围移动 redux 包装器

 <ReduxProvider>
  <ThemeProvider>
   <App/>
  </ThemeProvider>
 </ReduxProvider>

我的问题是 ReduxProvider 和 ThemeProvider 在同一个函数中呈现。

所以我将 ThemeProvider 移动到 ReduxProvider 子组件,这解决了我的问题。