错误消息提示 "No matching export in "node_modules/.pnpm/vue-demi@0.14.5_vue@3.2.45/node_modules/vue-demi/lib/index.mjs" for import "hasInjectionContext"
意味着你试图从 vue-demi
包导入 hasInjectionContext
,但 vue-demi
并没有提供这个导出。这可能是由于你的项目中的 vue-demi
、pinia
或者其他依赖版本不兼容所导致的。
为了解决这个问题,你可以尝试以下步骤:
-
确保
pinia
和vue
的版本匹配:你可以查看pinia
的文档或者其package.json
文件,来了解它支持哪个版本的vue
。然后,你需要确保你的项目中的vue
版本与pinia
支持的版本匹配。 -
更新
vue-demi
:vue-demi
是一个用于在 Vue 2 和 Vue 3 之间做抽象的库,因此你需要确保它的版本与你的vue
和pinia
版本兼容。你可以尝试更新vue-demi
到最新版本。 -
删除
node_modules
并重新安装:有时候,版本冲突的问题可以通过删除node_modules
文件夹并重新安装依赖来解决。你可以运行以下命令来执行这个操作:
rm -rf node_modules
npm install
或者,如果你正在使用 yarn:
rm -rf node_modules
yarn install
这将会删除你项目中的 node_modules
文件夹,并重新安装所有的依赖。
如果以上步骤都不能解决问题,你可能需要查看你的项目的其他依赖,看看是否有其他的依赖也在使用 vue-demi
,并确保它们都与你的 vue
和 pinia
版本兼容。
版本对应
自己项目中可以正常使用的版本
"pinia": "^2.0.34",
"vue": "^3.2.45",