Vuex中的state訪問狀態物件
阿新 • • 發佈:2018-12-14
state ,這個就是我們說的訪問狀態物件,它就是我們SPA(單頁應用程式)中的共享值。如何把狀態物件賦值給內部物件,也就是把stroe.js中的值,賦值給我們模板裡data中的值。我們有三種賦值方式。
一、通過computed的計算屬性直接賦值
computed屬性可以在輸出前,對data中的值進行改變,我們就利用這種特性把store.js中的state值賦值給我們模板中的data值。
例如:充電樁專案中實現頂欄標題文字改變。
computed:{
count(){
return this.$store.state.count
}
}
注意:return this.$store.state.count這一句,一定要寫this,要不你會找不到$store的。這種寫法很好理解,但是寫起來是比較麻煩的,那我們來看看第二種寫法。
二、通過mapState的物件來賦值
1.首先要用import引入mapState
import {mapState} from 'vuex'
2.還在computed計算屬性裡寫如下程式碼:
computed:mapState({ count:state=>state.count }) // computed: mapState({ // // ①ES5寫法 // // count: function (state) { // // return state.count // // } // // ②ES6寫法(箭頭函式) // count: state => state.count // })
三、通過mapState的陣列來賦值
1.首先要用import引入mapState
import {mapState} from 'vuex'
2.
computed: mapState(['count'])
這個算是最簡單的寫法了,在實際專案開發當中也經常這樣使用。