首先创建一个store文件夹然后再里面新建一个index.js文件,然后全局引入封装好的仓库:
import store from './store'
Vue.prototype.$store = store
然后再store=> index.js中创建仓库:
// 一、引入核心库
import Vue from 'vue'
// 引入vuex
import Vuex from 'vuex'
//调用这个插件
Vue.use(Vuex)
//设置一个变量
let store = new Vuex.Store({
state:{
},
mutations:{
},
actions:{
},
getters:{
},
modules:{}
})
//导出store
export default store
state:唯一的数据源
mutations:修改state的唯一方式,它可以执行同步
action:它和mutations类似
一、它可以执行异步
二、它不能直接修改state。它只能去commit一个mutation
getters:类似于计算属性
modules: 模块,为了解决state冗余臃肿的问题