package.json中对peerDependencies的理解

peerDependencies只要是用来限制依赖的,最近在开发的时候有遇到这样的问题,所以研究了一下
package.json中对peerDependencies的理解_第1张图片

"peerDependencies": {
    "@vue/composition-api": "^1.0.5",
    "@vue/runtime-core": "^3.0.0",
    "echarts": "^5.4.1",
    "vue": "^2.6.12 || ^3.1.1"
  },

这张图片展示的是vue-echarts的package.json的部分。这里我们可以看到peerDependencies中配置的echarts需要的是^5.4.1的,也就是同时需要安装5.x.x版本的echarts。

我当时需要的问题就是

  • 问题
    因为项目本来有4.x.x的echarts,所以用npm安装vue-echarts时会报版本冲突的问题。
  • 原因
    因为npm安装的时候会默认安装最新的版本,但是最新版本的vue-echarts依赖于5.x.x版本的echarts,所以报错了,导致安装不成功。
  • 解决方法
    这个时候只需要把echarts卸载了,然后安装5.x.x版本echarts的就可以了,然后安装vue-echarts;或者先卸载,然后 运行npm install echarts vue-echarts也可以安装成功。

参考:
https://juejin.cn/post/7170716245762048036#heading-5

你可能感兴趣的:(前端)