vuex中mutation和action的区别

16 篇文章 0 订阅
1 篇文章 0 订阅
本文介绍了Vuex中mutation和action的区别。mutation负责同步更新store的状态,而action则用于处理异步操作,它会调用mutation来最终改变store。在示例中,increment mutation仅同步增加count值,而asyncIncrement action通过setTimeout异步调用increment mutation,展示了两者的不同。
摘要由CSDN通过智能技术生成

vuex中mutation和action的区别

mutation 同步操作store, action 异步操作mutation 然后修改store
import Vue from 'vue';
import Vuex from 'vuex';
Vue.use(Vuex)
export default new Vuex.Store({
    state: {
        count:1
    },
    getters: {
        newCount: state => state.count * 3
    },
    mutations: {
        increment: (state, value) => {
            console.log(value)
            state.count += value;
        }
    },
    actions: {
        asyncIncrement:({commit}) => {
            setTimeout(()=> {
                commit('increment', 1)
            }, 2000)
        }
    }
});
mutations方法increment只能同步变更state里的count值,actions通过调用mutations里的increment方法可以进行异步操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值