如何让npm安装包时忽略单个或全部对等依赖?
解决方案
共有两类方案可选,按优先级从高到低排列:
临时跳过依赖校验(无需修改包代码,推荐)
npm从v7版本开始强化了对等依赖校验,你可以通过以下两种方式跳过校验完成安装:
- 单次安装时加参数,执行命令:
该参数会直接忽略本次安装的对等依赖版本不匹配报错,完成安装流程。npm install vuex-module-decorators@latest --legacy-peer-deps - 项目全局配置跳过校验,在项目根目录的
.npmrc文件中添加如下配置:
配置后该项目所有npm安装操作都会自动跳过对等依赖校验,不需要每次加参数。legacy-peer-deps=true
适配修改原包(仅长期维护时选用)
如果你需要长期维护适配版本,或者要给团队内部统一使用,可以选择fork原仓库修改依赖规则:
- fork vuex-module-decorators 仓库到自己的账号下
- 找到package.json中的
peerDependencies字段,将vuex的版本要求从3.x修改为>=3.0.0或者^3.0.0 || ^4.0.0 - 可以选择发布为私有npm包,或者通过
npm link的方式本地引入使用
注意:无论用哪种方案,安装完成后建议跑完所有和vuex相关的业务测试,确认没有因为vuex4的不兼容变更影响该库的正常功能。
内容的提问来源于stack exchange,提问作者Christopher Shroba
相关产品推荐
相关产品推荐

