Vite Vue3项目启动dev服务时报vue-demi无effectScope导出错误如何解决?
报错原因
你遇到的报错是典型的依赖版本不兼容问题:
你项目中安装的Pinia版本为2.0.0-rc.6,这个版本开始引入了对Vue 3新增的effectScopeAPI的依赖,而该API是Vue在3.2.0版本才正式对外暴露的稳定API。你当前项目的Vue版本为3.1.1,低于API的最低支持版本,同时配套的vue-demi@0.9.1在低于3.2.0的Vue环境下不会导出effectScope,因此Pinia导入对应API时找不到匹配的导出项,直接触发构建失败。
解决方法
两种方案二选一即可:
- 方案1:升级Vue到3.2.0及以上版本
执行对应包管理器的升级命令,以你使用的pnpm为例:
升级完成后建议删除本地node_modules文件夹和pnpm-lock.yaml锁文件,重新执行pnpm add vue@^3.2.0 @vue/compiler-sfc@^3.2.0pnpm install安装全量依赖后,再启动开发服务器即可正常运行。 - 方案2:降级Pinia到适配Vue 3.1.x的版本
如果你暂时没有升级Vue版本的计划,可以将Pinia降级到2.0.0-rc.5及更早的版本,该版本还未依赖effectScopeAPI,可适配Vue 3.1.x环境:
安装完成后直接启动开发服务器即可。pnpm add pinia@2.0.0-rc.5
内容的提问来源于stack exchange,提问作者amado jesus martin
相关产品推荐
相关产品推荐

