这本身不是问题,但对Vue社区来说是个好问题。我想就Vuex和不变性展开讨论。当启用Vuex 严格模式时,并且在状态内有一个需要将其属性更改为组件的计算函数调用的对象时,将警告您不要采用这种做法。好的,这不是新问题...
我明白了这一点,并且确信这是最好的,但是我发现自己必须将对象克隆(深度克隆)到计算的/数据中,以便能够可以与本地州合作而不直接对其进行突变。
所以我有一个问题:由于直接改变对象的属性不是一种好习惯,并且由于必须使用this.$store.commit
/ this.$store.disptach
来使状态突变,所以Vuex为什么不这样做当我们在计算对象中通过this.$store.state
或this.$store.getters
调用状态时,传递此对象的深层克隆而不是浅层克隆。
vue-freeze是一个试图对此问题做出反应的模块,但是由于长期以来一直没有更新。你们是如何工作的?