Javascript npm3中具有依赖性的满足对等依赖性
因此,NPM 3删除了自动解析对等依赖项的功能,这很好,但是在开发插件/库供其他应用程序使用的场景中,如果我让底层库使用Javascript npm3中具有依赖性的满足对等依赖性,javascript,node.js,npm,Javascript,Node.js,Npm,因此,NPM 3删除了自动解析对等依赖项的功能,这很好,但是在开发插件/库供其他应用程序使用的场景中,如果我让底层库使用peerDependencies,这是正确的概念,这意味着,如果任何人想要使用该库,他们需要手动解决所有依赖项 因此,与其让他们这样做,我可以将相同的依赖项放入devdependency中,以满足本地开发场景,这样任何使用它的人都需要明确地满足同行,任何进一步开发该库的人都可以通过devdependency免费获得对等依赖项 所以问题是,这有什么问题吗?因为我几乎找不到关于如何
peerDependencies
,这是正确的概念,这意味着,如果任何人想要使用该库,他们需要手动解决所有依赖项
因此,与其让他们这样做,我可以将相同的依赖项放入devdependency
中,以满足本地开发场景,这样任何使用它的人都需要明确地满足同行,任何进一步开发该库的人都可以通过devdependency
免费获得对等依赖项
所以问题是,这有什么问题吗?因为我几乎找不到关于如何在NPM3中以任何自动方式理智地处理对等依赖关系的信息
==更新===
如评论中所述,当我尝试以这种方式进行操作时,它与npm的早期版本不兼容,因此npm>=3.0可以很好地使用这种方法,并且它自动满足开发人员签出npm安装
并提高效率的标准,然而,如果您在早期版本的NPM上执行此操作,它会围绕未满足的对等依赖项爆发,并且似乎不起作用
我发布这篇文章是因为我希望这种与早期版本的不兼容在某种程度上是由于我的无能,这样我既可以为那些只想npm安装在这个包上为它开发的人提供易于开发的支持,也可以为以前的版本提供支持。因此,如果您知道更好的方法或解决此问题或其他问题的方法,请大声说。我尝试过这种方法,但它似乎在构建服务器上爆炸了,说它不能满足兄弟依赖关系。这是通过github专门使用依赖项,因此不确定这是否无关,但在本地似乎可以正常工作。上述注释问题可能是运行npm2而不是npm3的生成服务器造成的,如果这种方法只能用于npm3,并且不适用于早期版本,则会带来更大的复杂性。注释垃圾邮件,所以,npm2并没有采用上述方法,改为npm3,效果很好,所以如果消费者可能需要在没有npm3的情况下构建它,我会注意这种方法。添加您的更新作为答案。。。