【问题标题】:Handle Dark mode in Material UI redux在 Material UI redux 中处理暗模式
【发布时间】:2021-12-29 15:33:47
【问题描述】:

我有一个带有 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 状态丢失了?

我该如何处理?

【问题讨论】:

  • 这在ssr中是否像nextjs?或正常的反应应用程序
  • 不,正常的反应应用,一切都在客户端呈现。

标签: javascript reactjs redux material-ui


【解决方案1】:

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

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

【讨论】:

  • 这也是我使用它的方式。 redux Provider 是主要的包装器,我仍然有问题。但如果它应该像这样工作,那么可能还有其他问题。
【解决方案2】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-02
    • 1970-01-01
    • 2020-04-09
    • 2018-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多