vuex 之 State

PS:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?這只是個人筆記

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?這只是個人筆記

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?這只是個人筆記

Vuex 使用單一狀態樹,用一個對象就包含了全部的應用層級狀態。每個應用將僅僅包含一個 store 實例.單狀態樹和模塊化并不沖突

Vuex 通過store選項,提供了一種機制將狀態從根組件『注入』到每一個子組件中(需調用Vue.use(Vuex))

通過在根實例中注冊store選項,該 store 實例會注入到根組件下的所有子組件中,且子組件能通過this.$store訪

this.$store.state.count ,在獲取到這些狀態的時候多數都在計算屬性中來獲取

___以上僅僅是單狀態樹

mapState輔助函數

當一個組件需要獲取多個狀態時候,將這些狀態都聲明為計算屬性會有些重復和冗余

import{mapState}from'vuex' ?

使用mapState輔助函數幫助我們生成計算屬性

computed:mapState({

? getMsg : state => state.app? ? // 箭頭函數可使代碼更簡練

// 為了能夠使用 `this` 獲取局部狀態,必須使用常規函數

? ? ? ? str(state){ //這里的state是一個全局的state狀態

? ? ? ? ? ? ? ?return state.app.msg ?+ ' ?- ?' + this.count; ?//這里的app使用的是 vuex中的模塊化 中的app.js

? ? ? ?},

})

__State模塊化

在 export default new Vuex.Store({ modules:{ app,} }) 傳入 app.js 模塊

在app.js模塊中返回的時候主要 export default { state }

this.$store.state.oss.isUpdateObjectList ?讀取oss里面的state;

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 安裝 npm npm install vuex --save 在一個模塊化的打包系統中,您必須顯式地通過Vue.u...
    蕭玄辭閱讀 2,964評論 0 7
  • Vuex是什么? Vuex 是一個專為 Vue.js應用程序開發的狀態管理模式。它采用集中式存儲管理應用的所有組件...
    蕭玄辭閱讀 3,148評論 0 6
  • vuex 場景重現:一個用戶在注冊頁面注冊了手機號碼,跳轉到登錄頁面也想拿到這個手機號碼,你可以通過vue的組件化...
    sunny519111閱讀 8,035評論 4 111
  • Vuex 是一個專為 Vue.js 應用程序開發的狀態管理模式。它采用集中式存儲管理應用的所有組件的狀態,并以相應...
    白水螺絲閱讀 4,686評論 7 61
  • Vuex 的學習記錄 資料參考網址Vuex中文官網Vuex項目結構示例 -- 購物車Vuex 通俗版教程Nuxt....
    流云012閱讀 1,472評論 0 7