不可变的js和redux存储中的函数

时间:2016-05-07 19:04:08

标签: javascript reactjs redux immutable.js

我正在使用react,redux + immutable js开发一个应用程序。

我的所有app状态都在一个只有不可变成员的redux商店中。我想知道是否允许将函数存储在其中。我的用例是我在我的状态中有表单元素的描述,并使用react来渲染它们。某些表单元素需要验证,因此最简单的方法是将函数存储在状态中。这有效,但我觉得这是一种不好的做法。我似乎无法在网上找到任何东西。

感谢任何帮助!

类似的东西:

Map({
  a: stuff
  b: List.of(
    ...
    // some UI form element that requires a function to validate
    Map({
      // other informations....   
      validate: value => 'success',
      ...
    })
    ...
  ),
  c: moreStuff
})

1 个答案:

答案 0 :(得分:1)

是的,这通常是气馁的,因为它打破了时间旅行调试等能力。 Redux常见问题涵盖了此主题:http://redux.js.org/docs/FAQ.html#organizing-state-non-serializable