如何确保npm使用特定包的子依赖版本?

如何确保npm使用特定包的子依赖版本?,npm,dependencies,npm-install,package.json,Npm,Dependencies,Npm Install,Package.json,我想使用webpack@4.0.0在许多项目中。我创建了一个helper包,如下所示: “name”:“helper”, “依赖项”:{ “网页包”:“4.0.0” } 我想使用2个依赖于其他版本的wepback: external1依赖于webpack@3.0.0 external2依赖于webpack@5.0.0 在我所有的项目中,我都会有一个package.json,如下所示: “名称”:“项目”, “依赖项”:{ “助手”:“1.0.0”, “外部1”:“1.0.0”, “外部2”

我想使用
webpack@4.0.0
在许多项目中。我创建了一个
helper
包,如下所示:

“name”:“helper”,
“依赖项”:{
“网页包”:“4.0.0”
}
我想使用2个依赖于其他版本的
wepback

  • external1
    依赖于
    webpack@3.0.0
  • external2
    依赖于
    webpack@5.0.0
在我所有的项目中,我都会有一个
package.json
,如下所示:

“名称”:“项目”,
“依赖项”:{
“助手”:“1.0.0”,
“外部1”:“1.0.0”,
“外部2”:“1.0.0”
}
在我的
节点\u模块中
,我将拥有多个版本的
网页
。是否有办法确保我使用
helper
中的版本(无需在
project
中重新安装)

我可以在
helper
中使用
peerDependency
并直接在所有项目中安装它,但由于我有很多repo一个多个常见的依赖项,所以我尝试将它们重新组合到一个
helper
中,以便在任何地方安装,以防止在任何地方复制粘贴相同的依赖项


我正在使用
npm@6

本质上,您是否希望强制执行这两个包
external1
external2
,使用
webpack@4.0.0
,即强制
external1
external2
使用与您的
helper
软件包使用的
webpack
版本相同的
。这里的
helper
是一个
devDependency
,而
webpack
用于dev,其他
外部
包不应该依赖它,但它们可能会出错并依赖它。我真的不在乎他们使用什么版本,我不想强迫他们,我想确保不管怎样,如果我使用它(像bin一样的
npx webpack
,或者
import webpack
),我从
helper