1.Vuex是什麼?vue
學院派:Vuex
是一個專爲 Vue.js
應用程序開發的狀態管理模式;集中存儲和管理應用的全部組件狀態。框架
理解:以上這4個詞是咱們理解的關鍵。狀態:什麼是狀態,咱們能夠通俗的理解爲數據。Vue只關心視圖層,那麼視圖的狀態如何來肯定?咱們知道是經過數據驅動,這裏的狀態管理能夠簡單理解爲管理數據。集中存儲:Vue
只關心視圖,那麼咱們須要一個倉庫(Store
)來存儲數據,並且是全部的數據集中存儲,視圖和數據就能夠分析。管理:除了存儲,還能夠管理數據,也就是計算、處理數據。全部組件狀態:所用的組件共用一個倉庫(Store
),也就是一個項目只有一個數據源(區分模塊modules
)。ide
總結:Vuex就是在一個項目中,提供惟一的管理數據源的倉庫。工具
2.有什麼用?使用場景?ui
場景一:處理多組件依賴於同一個數據,例若有柱狀圖和條形圖兩個組件都是展現的同一數據;spa
場景二: 一個組件的行爲——改變數據——影響另外一個組件的視圖,其實也就是公用依賴的數據;code
Vuex
將組件公用數據抽離,在一個公共倉庫管理,使得各個組件容易獲取(getter
)數據,也容易設置數據(setter
)。blog
3.源碼初覽開發
這是Vuex
的源碼文件,總共包含五大部分,Plugins
兩個注入文件,核心文件index
,幫組文檔helper
,工具文件util.js
文檔
咱們先看看Index.js
文件export
的框架,後面具體分析。
export default { Store, install, mapState, mapMutations, mapGetters, mapActions }
後面文章分析
Store
倉庫。