有时当我使用createApp(App).use(..)..时,一切都消失了



我试图在我的vue项目中使用vuex。当我直接使用商店时,一切都很好。但当我尝试将存储放入模块中然后使用它时,一切都消失了。

此外,如果我从router.js导入路由器并使用它,一切都会消失。

对此非常困惑。

我直接使用它的方式

import a from "./store/modudel/a"

我放入模块的方式

// main.js
import store from "./store/index";
createApp(App)
.use(store)
.mount("#app");
// store/index.js
import Vue from 'vue';
import Vuex from 'vuex';
import a from './module/a';
Vue.use(Vuex);
export default new Vuex.Store({
modules: {
a
}
});

您的store/index.js包含特定于Vue 2的代码,但您的main.js适用于Vue 3。这段代码应该会导致开发终端中的linter错误或浏览器控制台中的运行时错误。

假设您有一个带有Vuex 4的Vue 3项目,则等效的存储代码为:

// store/index.js
import { createStore } from 'vuex';
import a from './module/a';
export default createStore({
modules: {
a
}
});

最新更新