在'vuex'警告中找不到“导出'createStore'

Posted

技术标签:

【中文标题】在\'vuex\'警告中找不到“导出\'createStore\'【英文标题】:Getting "export 'createStore' was not found in 'vuex' warning在'vuex'警告中找不到“导出'createStore' 【发布时间】:2021-03-05 23:37:54 【问题描述】:

我对所有这些都是新手,现在正在学习 Vue。 我已经安装了 Vuex,使用导出默认值并导入它,但仍然出现此错误 =>

警告编译时有 1 个警告 ./src/store/index.js 中的警告 “在‘​​vuex’中找不到导出‘createStore’

index.js 存储文件

import Vue from 'vue';
import Vuex from 'vuex';
Vue.use(Vuex);

import coachesModule from './modules/coaches/index.js';

const store = new Vuex.Store(
  modules: 
    coaches: coachesModule
  
);

export default store;


package.json 文件


  "name": "vue-first-app",
  "version": "0.1.0",
  "private": true,
  "scripts": 
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  ,
  "dependencies": 
    "core-js": "^3.6.5",
    "vue": "^3.0.0",
    "vue-router": "^4.0.0-rc.5",
    "vuex": "^3.5.1"
  ,
  "devDependencies": 
    "@vue/cli-plugin-babel": "~4.5.0",
    "@vue/cli-plugin-eslint": "~4.5.0",
    "@vue/cli-service": "~4.5.0",
    "@vue/compiler-sfc": "^3.0.0-0",
    "babel-eslint": "^10.1.0",
    "eslint": "^6.7.2",
    "eslint-plugin-vue": "^7.0.0-0"
  


使用卸载 Vue 后

npm uninstall -g @vue/cli

并使用重新安装 Vue

npm install -g @vue/cli@latest 

npm i vue vue-router -S
npm install 

现在我还在:

 INFO  Starting development server...
98% after emitting CopyPlugin

 WARNING  Compiled with 1 warnings                                             3:56:20 PM

 warning  in ./src/store/index.js

"export 'default' (imported as 'Vue') was not found in 'vue'

谁能帮帮我?

【问题讨论】:

您在关注哪些文档/教程?你是怎么安装的? 你能分享你的 package.json 内容和你正在阅读的文档的链接吗? 好的文档,请分享您的商店和包装内容 请用这些详细信息更新您的问题 你想用 vue 3 还是 2 工作?或者你是 vue 世界的新手? 【参考方案1】:

更新。 你用vue3和vuex3,但你应该用vuex4。


你可以尝试使用

const store = new Vuex.Store( 
    // options
)

而不是

const store = createStore( 
    // options
)

?

根据这个文档https://vuex.vuejs.org/guide/#the-simplest-store 。

【讨论】:

【参考方案2】:

createStore 是 Vuex 4 语法,因为你使用的是 vuex 3,你应该这样做:

import Vue from 'vue';
import Vuex from 'vuex';
Vue.use(Vuex)

import coachesModule from './modules/coaches/index.js';

const store = new Vuex.Store(
  modules: 
    coaches: coachesModule
  
);

export default store;

【讨论】:

只需添加Vue.use(Vuex) 嗯好的,你应该卸载 vue 和 vue 路由器并使用npm i vue vue-router -S重新安装它们【参考方案3】:

我在使用 Quasar 作为 UI 框架时遇到了同样的问题,并通过运行解决了它

yarn add vuex@next

或者如果你正在使用 npm

npm install --save vuex@next

然后重建项目让一切再次运行。

更多详情请参阅:https://www.codegrepper.com/code-examples/whatever/%22export+%27createStore%27+was+not+found+in+%27vuex%27

这在后台所做的是将"vuex":"^3.6.2" 更改为"vuex": "^4.0.2"

【讨论】:

以上是关于在'vuex'警告中找不到“导出'createStore'的主要内容,如果未能解决你的问题,请参考以下文章

在 mapActions() 中找不到 vuex 模块命名空间:taskModule/?

使用 Jest 测试 NUXT.js 和 Vue.js 应用程序。获取“在 mapState() 中找不到 [vuex] 模块命名空间”和“[vuex] 未知操作类型”

NXGS 警告“在 '@ngxs/store' 中找不到导出 'StateContext'”

警告:DOMDocument::loadXML():需要开始标记,在实体中找不到“<”

Laravel 4在TestCase中找不到测试

警告:在具有名称的 DispatcherServlet 中找不到具有 URI [] 的 HTTP 请求的映射