如何使用npm将一个库打包到另一个JS库中



我正在创建一个angular库,它在内部使用vtk.js库。我尝试将vtk.js添加为对等依赖项。但在安装我的自定义包时,它也显示了安装vtk.js的警告。

有什么办法可以确保vtk.js包也会被装在我的angular包里吗?

您可以用两种方式表达库的依赖关系(实际上是3种,但devDependencies非常自我解释,所以我们省略了它们(

  1. peerDependencies-如果需要表达以下内容,可以使用这种类型的依赖关系:
  • 您的库依赖于另一个库的特定版本
  • 如果node_module包含几个版本的依赖项,您的库将发生冲突(由于所谓的传递依赖项,这种情况是可能的(
  • 您希望开发人员决定使用哪个版本的依赖项

正如您所提到的,peerDependencies不是自动安装的,相反,它会警告您库的消费者缺少依赖项或不兼容的版本

2.dependencies-如果您不关心上述情况,请使用依赖项。这里有vtk.js可以保证它将自动为您的lib 的每个消费者安装

最新更新