集中的狀態(tài)存儲(chǔ),主要是為了解決組件間共享數(shù)據(jù)狀態(tài)時(shí),傳值不便問(wèn)題
1、特點(diǎn)
vuex的核心是store,數(shù)據(jù)都存儲(chǔ)在state里,特點(diǎn):
1、vuex的狀態(tài)存儲(chǔ)是響應(yīng)式的,
2、不能直接改變store的state中的數(shù)據(jù),只能通過(guò)commit mutation的方式去改變
2、關(guān)鍵屬性
1、state:數(shù)據(jù)狀態(tài)存儲(chǔ)
2、mapState:用于將store中的數(shù)據(jù),生成到組件的計(jì)算屬性中
3、getters:state派生的狀態(tài),被認(rèn)為是store的計(jì)算屬性
4、mapGetters:僅僅是將 store 中的 getter 映射到組件計(jì)算屬性
5、mutations:是一個(gè)修改store數(shù)據(jù)的位置,參數(shù)1是state,參數(shù)2是接收commit的第二個(gè)數(shù)據(jù)參數(shù),要是想要喚醒一個(gè)mutaion handler,需要使用store.commit(fn,傳值),并且必須是同步函數(shù)
6、mapMutations:在組件中使用函數(shù)
7、actions:類似于mutation,但是他可以包含異步操作,還可以提交mutation,actions內(nèi)的函數(shù)可以使用dispatch的方式調(diào)用另一個(gè)方法
8、mapAction:在組件中使用action中的方法