【问题标题】:Storing configuration object in Redux state在 Redux 状态下存储配置对象
【发布时间】:2018-05-03 05:04:29
【问题描述】:

我想知道是否可以在 store/state 中存储一个配置对象以及我的 React/Redux 应用程序需要的其他几个对象?这些是所有组件都需要访问的通用对象。

我在想它们可以在商店创建时添加到初始状态,这样所有组件都可以访问这些对象。

谢谢

【问题讨论】:

    标签: reactjs redux


    【解决方案1】:

    这确实是一个见仁见智的问题,但 redux 存储是存储您需要全局访问的动态内容的好地方,然后您可以在每个组件中需要时将相关部分映射到 props。

    【讨论】:

      【解决方案2】:

      我个人认为 redux 存储是保存配置的一个非常有用的位置,因为它在我通常需要它的所有地方(组件、thunk、sagas 等)都很容易获得。

      如果您使用combineReducers,如果您在initialState 中有任何没有匹配reducer 的键,则会收到警告。

      一个简单的解决方法是创建一个reducer,其唯一目的是在状态中提供配置:

      export default (state = { ...configuration }) => state
      

      这可以像平常一样与所有其他减速器结合使用。

      注意:我将configuration 对象传播到state 参数中的原因是为了保证它在商店中是不可变的。如果您更确信 configuration 对象不会在您的应用中发生变异,则可以将其简化为:

      export default () => configuration
      

      【讨论】:

      • 谢谢,很有道理。
      猜你喜欢
      • 2016-08-19
      • 1970-01-01
      • 1970-01-01
      • 2017-08-15
      • 2019-08-17
      • 2020-01-05
      • 2021-07-22
      • 1970-01-01
      相关资源
      最近更新 更多