假设我有一个在不同工作区之间共享的外部NPM-lib依赖项,是否可以为所有依赖的工作区设置一个版本?如果这种依赖关系是对等或依赖关系,该怎么办?
例如
// external-lib-dep in npm
//package1's package.json
...
"dependencies": {
"external-lib-dep": "^1.0.0"
}
...
// package2's package.json
...
"dependencies": {
"external-lib-dep": "^1.2.0"
}
...
// package3's package.json
...
"dependencies": {
"very-different-external-lib-dep": "^1.2.0"
}
...
有可能以某种方式";份额;deps的版本,而不是一遍又一遍地复制它?(就像maven中父pom中的dependencyManagement
一样(。
如果单回购持有";普通的";某家公司所有服务的libs。当我在服务中使用其中一个库时,它们的解决方案会起作用吗?
可以通过一种特定的方式在工作区之间共享依赖关系的版本。
您的工作区应该在其peerDependencies
中声明external-lib-dep
。在你的单回购根package.json
中,你应该在dependencies
中声明external-lib-dep
。这样,您的工作空间将";inherit";根工作区的external-lib-dep
版本。