javascript - Vuex 突变是原子的吗?

标签 javascript vue.js vuex mutation vuex-modules

我试图了解 Vuex 中的突变是否是原子的。 我有这段代码,但我不确定是否存在任何情况,当 CHANGE_A 突变将被调用而 CHANGE_B 尚未完成时:

const mutations = {
  [CHANGE_A](state, DATA) {
    Vue.set(this.test, 'left', DATA);
  },

  [CHANGE_B](state, data) {
    Vue.set(this.test, 'right', DATA);
    Vue.set(this.test, 'left', DATA);
  },
}

谢谢

最佳答案

突变是原子的,因为它们的处理函数必须始终是同步的,如文档中所述:https://vuex.vuejs.org/guide/mutations.html

如果您反对这种做法并使处理程序函数异步,那么它们将不再是原子的。

关于javascript - Vuex 突变是原子的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58835029/

相关文章:

javascript - 如何使用填充的输入值获取当前网站的html源

javascript - 如何避免 Meteor 助手运行多次

api - Vue/Nuxt.js - API 在创建的钩子(Hook)中被调用两次

javascript - 如何正确删除 vue-select 多选项

javascript - 未捕获的 FirebaseError : Function DocumentReference. set() 使用无效数据调用。不支持的字段值:未定义

javascript - 如何重构重复的条件 Vue.js 代码?

javascript - 使用appendTo从另一个容器移动元素

javascript - VueJS 在模板渲染前获取数据

vue.js - 如何在 Vuex 2 中设置初始状态?

JavaScript window.showModalDialog() 无法在 Chrome 上运行