依赖冲突产生的原因:当前使用的 npm 版本。
- npm v7 之前的版本遇到依赖冲突会忽视依赖冲突,继续进行安装
- npm v7 版本开始,对项目依赖有更加严格的版本约束,不会自动进行忽略,需要用户手动输入命令
有两个 option 参数可以解决版本冲突导致 npm 包不能被正常安装的问题:
--force
:无视冲突,强制获取远端 npm 库资源 (覆盖之前)--legacy-peer-deps
:忽视依赖冲突,继续安装(不覆盖之前)
# 推荐使用--legacy-peer-deps
npm install vue-router --force
npm install vue-router --legacy-peer-deps