获取未捕获的 TypeError:无法读取 Vue.use(Vuex) 上未定义的属性“use”
2020-09-07
3713
在我的 vue 前端,我尝试设置 Vuex。在我的店铺页面(店铺目录内,文件名为 index.js)上,我使用的是 Vue 3.0 当我运行代码时,我得到无法读取 Vue.use(Vuex) 行上未定义的属性“use”
这是代码块
import Vue from "vue";
import Vuex from "vuex";
import Api from "../services/api";
Vue.use(Vuex);//here i get the error
export default new Vuex.Store({
state:{
articles:[]
},...
1个回答
你需要使用
Vuex 4
来兼容 Vue 3,Vuex 4 引入了一些重大更改,其中之一就是如何初始化存储。基本上,您不再需要使用
new Vuex.Store
,而是使用
createStore
来创建商店对象,并且不再需要在
store.js
中使用
Vue.use(Vuex)
。
import { createStore } from 'vuex';
export const store = createStore({
state: {...}
// other stuff
})
在您的
main.js
文件中:
import { createApp } from 'vue';
import { store } from 'path/to/store.js';
const app = createApp({...})
app.use(store);
您还可以在 github 上查看 完整的 Vuex 4 示例
akuiper
2020-09-07