是什么
Vuex 是一個(gè)專為 Vue.js 應(yīng)用程序開發(fā)的狀態(tài)管理模式 + 庫瓢姻。它采用集中式存儲(chǔ)管理應(yīng)用的所有組件的狀態(tài)幻碱,并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測(cè)的方式發(fā)生變化细溅。
為什么
下圖是單數(shù)據(jù)流場(chǎng)景(無數(shù)據(jù)共享):
在日常開發(fā)中喇聊,我們常常遇到狀態(tài)共享的場(chǎng)景,尤其是當(dāng)一個(gè)組件不斷的擴(kuò)張誓篱,當(dāng)?shù)竭_(dá)一定的程度時(shí)窜骄,需要將其拆分為不同的小組件,這個(gè)時(shí)候經(jīng)常就會(huì)需要使用到狀態(tài)共享啊研。自然党远,需要狀態(tài)共享的場(chǎng)景還有很多沟娱,例如一處修改腕柜,在某一處需要相應(yīng)的改變(例如header)等等矫废。
針對(duì)上述場(chǎng)景也可以使用全局變量蓖扑,但是由于沒有管理台舱,很容易造成全局污染,失控等問題竞惋。也可以借用vue-bus來實(shí)現(xiàn)拆宛,但是并不適用于復(fù)雜的場(chǎng)景。由此股耽,vuex應(yīng)運(yùn)而生瞻颂。
提示
小項(xiàng)目無需使用,當(dāng)自己感覺需要時(shí)再使用茬末。