一、store(倉(cāng)庫(kù))
包含 state 和 mutations,通過(guò)提交(commit) mutations 改變 state
二、state(狀態(tài))
Vuex 使用 單一狀態(tài)樹(shù) —— 是的,用一個(gè)對(duì)象就包含了全部的應(yīng)用層級(jí)狀態(tài)
問(wèn)題:如何在Vue 組件中獲得 Vuex 狀態(tài)?(https://vuex.vuejs.org/zh-cn/state.html)
三、getters
可以認(rèn)為是 store 的計(jì)算屬性,接受 state 作為其第一個(gè)參數(shù),使用 store.getters 或者 this.$store.getters 獲取。
四、mutations
有一個(gè)字符串的 事件類型 (type) 和 一個(gè) 回調(diào)函數(shù) (handler),回調(diào)函數(shù)會(huì)接受 state 作為第一個(gè)參數(shù),傳入 payload 當(dāng)?shù)诙€(gè)參數(shù),payload是一個(gè)對(duì)象。
五、action
類似于 mutation,不同在于:
Action 提交的是 mutation,而不是直接變更狀態(tài)。
Action 可以包含任意異步操作。