在Vue中,我們有時需要手動提交一個mutation來更新狀態。這時,我們可以使用commit方法來觸發一個mutation,進而修改狀態。commit方法接受兩個參數:mutation的名稱和payload(負載)。其中,payload可以是任何類型的數據,通常用來傳遞更新數據所需的參數。下面是一個簡單的例子:
//定義mutation
const mutations = {
increment(state, amount){
state.count += amount
}
}
//提交mutation
store.commit('increment', 10)
在上面的代碼中,我們定義了一個名為increment的mutation,它接受一個狀態對象state和一個表示需要增加多少的amount參數。接下來,我們通過調用store.commit方法來提交這個mutation,并傳遞amount參數值10。
除了用字符串來指定mutation的名稱外,我們也可以使用對象來進行提交。這樣做的好處是可以提供額外的參數,如下所示:
store.commit({
type: 'increment',
amount: 10
})
在上面的代碼中,我們使用了一個包含type(指定mutation的名稱)和amount(傳遞到mutation的參數)兩個屬性的對象來進行提交。