vuex包含 state 、getters 、mutations、actions,乙個元件通過 mutations 來修改資料,另乙個元件可以通過 getters 來獲取資料的副本,元件之間相互訂閱了資料
import vue from 'vue'
import vuex from 'vuex'
//註冊vuex外掛程式
vue.use(vuex)
//初始化user 如果存在就設為localstorage中的user,如果不存在就初始化為空
const user=json.parse(localstorage.getitem('user'))||
//1、建立乙個倉庫
export default new vuex.store(,
//訂閱資料變化 內容為方法
getters:
},//定於方法以改變資料,使用this.$store.commit('login')呼叫
mutations:,
loginout(state)
localstorage.removeitem('user')}},
// actions 也是乙個一對多的功能,可以同時觸發多個資料變化
actions:
//等同於下面**
chuange_num()
}})
1、state 包含原始的資料,相當於乙個倉庫,用來儲存資料,不可以直接修改
2、getters 是原始資料的副本,獲取 state 的值,不可修改
3、mutations 用來修改state中的資料
4、actions 用來提交 mutations 修改過後的資料
在main.js入口檔案中匯入vuex配置檔案,並在vue例項中新增store物件
import store from '../store/index.js'
new vue()
在vue元件中使用以下**修改vuex中的state資料
this.$store.commit('login',user)//第乙個引數為mutations 中的方法,第二個引數為login 方法的實參
如果帶有命名空間,需要在 mutations 方法前新增命名空間
this.$store.commit('user/login',user) // user為命名空間
vue vuex的綜合使用
目錄結構 store index.js modules a.js b.js 1 在a.js中宣告單頁所需要的資料等const state const mutations const actions export defult2 同樣宣告b.js 3 在index.js中進行匯入import vue ...
詳解 Vue Vuex 實踐
詳解 vue vuex 實踐翻譯自vue vuex getting started 承接自2017 vue.js 2快速入門指南,從屬於web 前端入門與工程實踐 隨著應用複雜度的增加,我們需要考慮如何進行應用的狀態管理,將業務邏輯與介面交互相剝離,詳細討論參考筆者的2016 我的前端之路 工具化與...
vue vuex 輪詢排程
export default newvuex.store 頁面輪詢 僅單獨頁面的輪詢,離開頁面則取消輪詢 全域性輪詢 專案啟動便一直存在 原理 輪詢模組中的state變數有定時器變數以及輪詢資料 const state store 中的輪詢模組同時會註冊乙個路由的前置守衛,進行清除所有頁面輪詢 im...