2. vuex 核心概念
1. state
-
vuex 管理的状态对象
-
它应该是唯一的
-
示例代码:
const state={ xxx:initValue }
2. actions
-
值为一个对象,包含多个响应用户动作的回调函数
-
通过 commit( )来触发 mutation 中函数的调用, 间接更新 state
-
如何触发 actions 中的回调? 在组件中使用:
$store.dispatch('对应的 action 回调名')触发 -
可以包含异步代码(定时器, ajax 等等)
-
示例代码:
const actions = { zzz ({commit,state},data1){ commit('yyy',{data1}) } }
3. mutations
-
值是一个对象,包含多个直接更新 state 的方法
-
谁能调用 mutations 中的方法?如何调用?
在 action 中使用:
commit('对应的 mutations 方法名')触发 -
mutations 中方法的特点:不能写异步代码、只能单纯的操作 state
-
示例代码:
const mutations = { yyy(state,{data1}){ // 更新state的某个属性 } }
4. getters
-
值为一个对象,包含多个用于返回数据的函数
-
如何使用?——
$store.getters.xxx -
示例代码:
const getters={ mmm (state){ return state.msg + '!' } }
5. modules
- 包含多个 module
- 一个 module 是一个 store 的配置对象
- 与一个组件(包含有共享数据)对应

被折叠的 条评论
为什么被折叠?



