在Vue.js中,commit()函數是一個非常重要的概念。它是Vuex的一個核心概念,用于提交一個mutation以修改state。該函數被用于在Vue組件內部、Vuex的store實例中以及其他地方提交一個mutation。
commit()函數接受兩個參數,第一個參數是一個字符串類型的mutation類型,用于指定要提交的mutation類型。第二個參數是一個可選的對象,用于傳遞一些額外的參數給mutation函數。通過commit()函數提交一個mutation,我們可以確保mutation是一個同步的操作,可以隨時在任何地方進行一個初始狀態的備份,以用于撤銷和重做等功能。
const store = new Vuex.Store({ state: { count: 0 }, mutations: { increment(state) { state.count++ } } }) store.commit('increment') console.log(store.state.count) // 輸出: 1
以上代碼演示了如何在Vuex的store實例中使用commit()函數修改state。首先,在mutations中定義了一個名為increment的mutation,用于修改state中的count屬性。然后,在store.commit()函數中提交該mutation。最后,使用console.log()輸出count屬性的值,即可看到其值已經被修改為1。