Javascript – Ändern Sie den Statuswert in Vue
迷茫
迷茫 2017-07-05 10:51:19
0
1
1012

Ich weiß, dass Aktionen eine asynchrone Verarbeitung durchführen. Ich meine, dass Sie den Wert im Status in Methoden direkt ändern können, ohne Aktionen oder Mutationen durchführen zu müssen die Spezifikationen von Vue?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

Antworte allen(1)
过去多啦不再A梦

关于为什么不能直接调用mutation方法或者直接修改state属性,而是必须得通过commit来提交mutation呢?引用官方文档:

再次强调,我们通过提交 mutation 的方式,而非直接改变 store.state.count,是因为我们想要更明确地追踪到状态的变化。这个简单的约定能够让你的意图更加明显,这样你在阅读代码的时候能更容易地解读应用内部的状态改变。此外,这样也让我们有机会去实现一些能记录每次状态改变,保存状态快照的调试工具。有了它,我们甚至可以实现如时间穿梭般的调试体验。
由于 store 中的状态是响应式的,在组件中调用 store 中的状态简单到仅需要在计算属性中返回即可。触发变化也仅仅是在组件的 methods 中提交 mutations。

可以看出来实际上是设计vuex的时候为了追踪state的变化,约定一定要用commit去提交mutation触发数据的变化的。你可以试一下官方的vue调试插件,叫Vue Devtools,可以直接看到组件,data,vuex等,也可以追踪变化什么的,试一下估计你就知道为什么要这么做了。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage