由 Vuex 中直接修改State到 “我傻了”

不才
2020-08-22 05:15:34

image.png

开头

看了 D2 Admin Store部分代码,看到直接在Action中修改 State,但是在我印象中Vuex操作 State 只能在Mutation 中修改(是我学艺不精了),后创建一个Demo(https://codesandbox.io/s/silly-sea-5kjn3)和查询相关文档(http://www.duanlonglong.com/qdjy/693.html)后发现实际上并非不能直接改只是因为直接改会导致副作用产生。

中间的

实际上看到D2 Admin的代码之后我在想到底应该 根据规范进行开发还是随心开发了,这太操蛋了。

还有一个点 v-model

<input v-model="$store.state.name" />

# v-model 原理
# v-model 也是会直接修改state
<input :value="$store.state.name" @input="e=>$store.state.name = e.data" />

结尾

为什么vuex中要通过mutations修改state,而不是直接修改state?