定义状态管理
定义状态管理在src-store-index.js文件中 把创建状态管理createStore从vuex中解构出来,把createStore导出来,createStore是一个方法,里面传递了对象
state:定义所需要的状态的,在这里定义的数据每个组件都可以使用,达到了数据共享
mutations:同步修改state 都是方法
actions:异步提交mutation
modules:模块化
index.js
import { createStore } from 'vuex'
export default createStore({
//定义所需要的状态的
state: {
name: 'jack'
},
//同步修改state 都是方法
//第一个参数state 第二个参数是需要修改的值
mutations: {
setName(state, payload) {
state.name = payload
}
},
//异步提交mutations
//第一个参数store 对象 第二个参数是需要修改的值
//写一个定时器,两秒之后修改name,
//store.commit是提交mutation就是调用mutation的方法
//第一个参数写mutation的名字,就是字符串setName,第二个是传入我们需要修改的数据
actions: {
asyncsetName(store, params) {
setTimeout(() => {
//commit是提交mutation 调用mutation方法
store.commit('setName', params)
}, 2000)
}
},
//模块化
modules: {
}
})