gpt4 book ai didi

javascript - 覆盖 npm 包依赖

转载 作者:行者123 更新时间:2023-12-01 14:56:54 24 4
gpt4 key购买 nike

我读到这个:How do I override nested NPM dependency versions?

不幸的是,它不能解决我的问题。

我正在尝试将包从使用特定依赖项更改为使用该依赖项的另一个版本。

它是否内置在包中,它应该使用哪个版本的依赖项,或者是否可以更改它?

具体来说,我正在尝试更改 css-loadercssnano@3.10.0 的默认依赖(最新)改为依赖 cssnano@4.0.0-rc.2 (下一个)。

从上面链接的第二个答案中,用户trickpatty 指出:

this will be removed anytime you run npm i instead of editing your package-lock.json and adding the child dependency to "dependencies" there, add the child dependency to your package.json "dependencies" section



其中 cssnano@4.0.0-rc.2 package.json 的 devDependencies 对 css-loader 没有任何作用.它仍然使用 cssnano 的另一个(默认)版本。 .

最佳答案

有几种选择:

  • 如果你可以使用不同的包管理器,yarn 可以通过添加 package.json 来实现它。 :
  • "resolutions": {
    "package-a": "2.0.0"
    }
  • 如果您可以使用最新的 Node LTS 和 NPM 8:https://docs.npmjs.com/cli/v8/configuring-npm/package-json#overrides
  • 否则,您可以使用一些工具,如 https://github.com/mislavlukach/flatten-dependencies在安装后脚本上运行以解决不同嵌套依赖项版本的问题。您需要将该版本作为依赖项安装在您的项目中。

  • 编辑:找到另一种选择: https://www.npmjs.com/package/npm-force-resolutions

    关于javascript - 覆盖 npm 包依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50474126/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com