1. 程式人生 > 實用技巧 >vuex簡單梳理3,Mutations的用法和其輔助函式

vuex簡單梳理3,Mutations的用法和其輔助函式

Mutations在vuex中的定位是修改store中state的唯一方法

雖然在之前梳理state時,曾直接修改過state是可以修改的,但在真正使用的時候想要修改state還是要通過Muatations,

而且在Mutations中不應該包含任何非同步的請求非同步的請求會在下一個梳理actions中提到。

const state = {
    liuDeHua:12,
   
}
const mutations = {
    // 修改state下的liudehua
  預設第一個引數接受state,後面只能在傳入一個引數
SET_LIU_DE_HUA(state,num=1,num2){ console.log(num,num2,
'只能接受一個引數,num2為undefined');// undefined console.log(this.state === state);//true state.liuDeHua +=num; }, }

在元件中通過,$store.commit()呼叫Mutations中的方法

 <div>
            
            <input type="button" @click="$store.commit('SET_LIU_DE_HUA',2,3)">
        <inputtype="button"@click="set_liu(5)">
            {{$store.state.liuDeHua}}
        
</div>
    methods:{
 
                set_liu(num){
                    this.$store.commit("SET_LIU_DE_HUA",num)
                            
        }