如何覆盖 npm peerinvalid

How to override npm peerinvalid

我正在尝试将已指定 peerDependencies 的节点模块安装到旧版本的软件包。我知道该模块将适用于较新的版本。我如何告诉 npm 忽略 peerinvalid 错误?当前 peerinvalid 错误正在停止安装过程。

这是错误:

npm ERR! peerinvalid Peer xxx@x.x.x wants xxx@x.x.x

谢谢!

一个真正hacky/temporary 的解决方法是修改 package.json 已安装包的指定 peerDependency,删除指定 react 作为 peerDependency 的行。

如果您(或同事)需要从头开始 npm install 您的包裹的要求,这个 hack 就会消失。就像我说的,一个蹩脚的临时解决方法。

在 NPM v3 中,对等依赖项显示警告而不是错误。

We will also be changing the behavior of peerDependencies in npm@3. We won’t be automatically downloading the peer dependency anymore. Instead, we’ll warn you if the peer dependency isn’t already installed. This requires you to resolve peerDependency conflicts yourself, manually, but in the long run this should make it less likely that you’ll end up in a tricky spot with your packages’ dependencies.

http://blog.npmjs.org/post/110924823920/npm-weekly-5