我一直在使用 Vuex,它坚持只通过它改变状态,mutators或者actions让我认为你的商店应该只包含尽可能平坦的对象,只有原始类型。
一些线程甚至规定规范化您的数据(因此,不是嵌套对象树,而是具有带有 id 数组的对象来指示树关系)。这可能与您的 JSON api 非常匹配。
这让我认为在您的通量存储中存储类(可能有改变自己的方法)是一种反模式。事实上,即使将您商店的数据混合到一个类中,似乎您也在逆潮流而动,除非您的类不对它的内部数据进行任何修改。
这让我想到,在 Vue/Vuex/Reactive/Flux 中使用任何类是一种反模式吗?
这些库似乎明确设计为与普通 JS 对象一起使用,并且您与 API 的一般交互(数据输入、数据输出)让我觉得更实用的方法(无不变性)是原始设计者所考虑的。
编写从function => test => state mutator wrapper around function.
我知道 JS 对象和 JS 类的行为非常相似(并且基本上是同一件事),但我的逻辑是,如果您不考虑类进行设计,那么您更有可能不会用非通量污染您的状态状态变化。
社区中是否普遍认为您的通量代码应该更实用,更少面向对象?