【谜之前端】“更改 Vuex 的 store 中的状态的唯一方法是提交 mutation。”有毛病 ?!
更改 Vuex 的 store 中的状态的唯一方法是提交 mutation。——摘自Vuex官网的mutation核心概念
这话应该就没毛病。
我原本的理解:加入vuex中有对象a,要修改只能在mutation中执行对a的修改从而达到修改效果。
背景:Vuex "version": "4.0.2"
vuex中存有一个user

mutations中有一个可修改user.flag属性的一个方法refreshUser(...)

某组件中有一个方法test(),该方法试图直接(不通过mutations)改变user的id属性,并且接着调用mutations的refreshUser()方法来改变user的flag属性。

执行test方法前:

执行test()方法后:

我觉得异常的是,本应该只能修改了user的flag属性,可是id属性也被修改了。
虽然说还是有用到mutations的方法才能更改 Vuex 的 store 中的状态,这感觉就像被耍了文字游戏一样φ(* ̄0 ̄)~
非常希望有知道准确原因且愿意留言的大佬,感谢。
人人须日日改过,一旦无过可改,即一日无步可过矣。若发现不妥的点请务必指出,非常感谢。

浙公网安备 33010602011771号