问题描述
我的 packageJSON
"devDependencies": {
"@fortawesome/fontawesome-svg-core": "^1.2.35","@fortawesome/free-solid-svg-icons": "^5.15.3","@vue/compiler-sfc": "^3.0.11","axios": "^0.21","bootstrap": "^4.0.0","install": "^0.13.0","jquery": "^3.2","laravel-mix": "^6.0.19","lodash": "^4.17.19","popper.js": "^1.12","postcss": "^8.3.0","resolve-url-loader": "^3.1.3","sass": "^1.34.1","sass-loader": "^8.0.0","vue": "^2.6.14","vue-izitoast": "^1.2.1","vue-loader": "^15.9.5","vue-template-compiler": "^2.6.14"
}
当我检查 npm list vue
`-- UNMET PEER DEPENDENCY vue@2.6.14
npm ERR! peer dep missing: vue@3.0.11,required by @vue/compiler-sfc@3.0.11
如何安装满足对等依赖的compiler-sfc
?vue@2.6.14
?我不想更新 vue 到 3。
解决方法
这听起来有点像 XY Problem,因为 @vue/compiler-sfc
包是为与 Vue 3 一起使用而创建的,就像错误所说的 has Vue 3 as a peer dependency。
这意味着它与 Vue 2 不兼容,因此您必须升级到 Vue 3 才能使用它。
更大的问题是——你为什么认为你需要这个包?@vue/compiler-sfc
是一组“用于编译 Vue 单文件组件的低级实用程序”:
此包包含较低级别的实用程序,如果您正在为将 Vue 单文件组件 (SFC) 编译为 JavaScript 的捆绑程序或模块系统编写插件/转换,则可以使用这些实用程序。用于 vue-loader、rollup-plugin-vue 和 vite。
根据您给定的包列表,我认为您不是在编写捆绑程序或模块系统,所以我的建议是放弃这种依赖。