我安装了
[email protected]
。我想安装 vuex-module-decorators@latest
,它的 PeerDependency 为 vuex 3
(不是 >=3
)。我有一种感觉,这与 vuex 4
配合得很好。有没有办法让我告诉 npm 安装这个新包,而不会因为无法解决对等依赖关系而崩溃(因为 4 != 3)?或者我是否需要创建自己的 vuex-module-decorators
分支,并更新 package.json
来允许 vuex >=3
?
快速但可能不安全:使用
--legacy-peer-deps
通常允许您在不满足对等依赖关系要求的情况下安装软件包。 (这是默认使用 npm@6
,因此如果您遇到问题,我假设您正在使用 npm@7
。)如果这不起作用,--force
将安装,而不考虑对等依赖关系。
需要稍微多一点努力,但更安全/手术:使用npm覆盖。这些是在 npm 8.x 中引入的。
您应该将
overrides
与现代版本的 npm 一起使用,因为 --legacy-peer-deps
不太安全,并且可能会屏蔽您可能想要修复的其他遗留对等依赖项:
"overrides": {
"vuex-module-decorators": {
"vuex": "$vuex",
}
}
只需尝试这个命令
npm install --legacy-peer-deps
如果您希望自动安装对等依赖项,请将“auto-install-peers=true”添加到项目根目录下的 .npmrc 文件中