在项目中和router文件夹同级建立store文件夹,新建index.js文件
添加以下代码:
(前提是已经npm过vuex,或者项目已经有该环境。)
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({
state: {
openDialog: false,
},
mutations: {
openDialogFunc(state) {
state.openDialog = !state.openDialog
}
},
actions: {
},
getters: {
},
modules: {
}
})
export default store
在其他组件中的调用方法:
methods: {
// 控制弹窗和传值
getMessage() {
// vuex,store中的函数调用Function,格式如下
this.$store.commit("openDialogFunc");
// console.log(x + "fuzujian");
},
};
简单两步,这样一个全局变量就被定义且被调用了。
ps:关键在于调用的时候this.$store.commit(“XXX”)是不可改变的。