Vuex 是一個專為 Vue.js 應(yīng)用程序開發(fā)的狀態(tài)管理模式。
它采用集中式存儲管理應(yīng)用的所有組件的狀態(tài),并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測的方式發(fā)生變化。
利用npm包管理工具,進(jìn)行安裝 vuex。
npm install vuex --save
需要注意的是這里一定要加上 –save,因為這個包我們在生產(chǎn)環(huán)境中是要使用的。
引用vuex
新建vuex 文件夾,在文件夾下新建 store.js 文件,在文件中引用vuex。

vuex 使用
每一個 Vuex 應(yīng)用的核心就是 store(倉庫)。“store”基本上就是一個容器,它包含著應(yīng)用中大部分的狀態(tài) (state)。
Vuex 和單純的全局對象有以下兩點不同:
Vuex 的狀態(tài)存儲是響應(yīng)式的。當(dāng) Vue 組件從 store 中讀取狀態(tài)的時候,若 store 中的狀態(tài)發(fā)生變化,那么相應(yīng)的組件也會相應(yīng)地得到高效更新。
不能直接改變 store 中的狀態(tài)。改變 store 中的狀態(tài)的唯一途徑就是顯式地提交 (commit) mutation。這樣使得我們可以方便地跟蹤每一個狀態(tài)的變化,從而讓我們能夠?qū)崿F(xiàn)一些工具幫助我們更好地了解我們的應(yīng)用。
創(chuàng)建 store
在?store.js 文件中創(chuàng)建一個 store,給它提供一個初始 state 對象和一些 mutation,并導(dǎo)出store。

給state 添加一個常量

在 Vue 組件中獲得 Vuex 狀態(tài)
新建一個 vue 模板,在模板中引入新建的store.js文件,并在模板中用$store.state來獲取狀態(tài)對象,輸出count 的值。

瀏覽器打開模板查看是否輸出

通過?store.commit?方法觸發(fā)狀態(tài)變更:
在store.js文件中的 mutations 加入兩個改變state的方法。

在模板中添加兩個方法,并調(diào)用mutations中的方法觸發(fā)狀態(tài)變更。

這樣進(jìn)行預(yù)覽就可以實現(xiàn)對vuex中的count進(jìn)行加減了。