【问题标题】:Is having behavior on ReSwift states an anti-pattern?ReSwift 状态的行为是一种反模式吗?
【发布时间】:2017-11-29 19:35:31
【问题描述】:

我开始尝试以这种方式构建应用程序的概念,我发现自己很想在状态中包含域规则函数,以便我可以重用它们。即使我找不到任何关于它的文档,它看起来确实很奇怪,因为各州觉得它们应该只拥有属性。例如,假设我有一个板状态,它公开了一个由几个动作创建者使用的方法,以确定将哪个动作分派到商店。可以把它放在国家本身吗?或者我应该为这个动作创建者创建一个公共类并将这个逻辑放在那里?如果两者都不行,那么推荐放置此逻辑的位置在哪里?

【问题讨论】:

    标签: reswift


    【解决方案1】:

    这里似乎有些混乱。您的状态不应该参与确定将哪个操​​作发送到商店。相反,副作用的性质应该决定动作,然后你的 reducer 应该根据当前状态和执行的动作来决定如何改变状态。

    至于您的一般性问题,只要函数在引用上是透明的,您将它们放在哪里并不重要。换句话说,foo.bar()bar(foo) 之间的唯一区别是语法,所以你可以做任何你觉得更舒服的事情。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-31
      • 2017-02-28
      • 1970-01-01
      • 1970-01-01
      • 2020-01-06
      • 1970-01-01
      相关资源
      最近更新 更多