目前,当我为Angular 2创建npm包时,主要是Angular 2服务,我使用peerDependencies
如下:
"peerDependencies": {
"@angular/core": "^2.0.0",
"rxjs": "5.0.0-beta.12",
"zone.js": "^0.6.6"
}
Run Code Online (Sandbox Code Playgroud)
我没有使用,dependencies
因为我不想让我的包裹拉过来npm install
.正如我所期望的那样,目标应用程序是Angular 2.
并将编译我的包所需的所有依赖项放入devDependencies
:
"devDependencies": {
"@angular/core": "^2.0.0",
"rxjs": "5.0.0-beta.12",
"zone.js": "^0.6.6",
"typescript": "*",
"typings": "*"
}
Run Code Online (Sandbox Code Playgroud)
但是,我应该使用dependencies
或peerDependencies
?
我主要关注的是使用该软件包的应用程序.它们是否会影响消费应用程序的构建过程?
或者我做错了,应该切换回去dependencies
?
小智 7
来自https://nodejs.org/en/blog/npm/peer-dependencies/
同伴依赖
我们需要的是一种在插件和它们的主机包之间表达这些"依赖关系"的方法.一些说法,"我只在插入我的主机软件包的1.2.x版本时工作,所以如果你安装我,请确保它与兼容主机一起使用." 我们称这种关系为同伴关系.
正如我所解释的那样,对等依赖关系只是告诉使用你的包的人,如果他们没有安装对等的依赖关系,它将无法工作.
归档时间: |
|
查看次数: |
2115 次 |
最近记录: |