gpt4 book ai didi

node.js - 如何更新间接引用的 Node 模块的版本?

转载 作者:太空宇宙 更新时间:2023-11-04 01:59:50 24 4
gpt4 key购买 nike

我在 Node 模块层次结构深处有一个库,这导致了安全问题。我没有在 package.json 中直接引用该模块。我引用的模块之一正在加载另一个模块,而该模块正在加载此模块。所以它是依赖树中的第三层。我可以使用 npm ls 找出库依赖树。我尝试更新 package.json,但我认为这是不正确的。

如何在不触及顶级模块的情况下更新此特定模块的版本?我应该使用收缩包装吗?

最佳答案

一种(可怕的方式)(直接回答你的问题)你可以自己仔细管理所有这些依赖项并在 NPM 之外构建该结构。我恨它。有大量的依赖管理开销,并且不能保证任何手工组装的组件都能一起工作 - 因此测试开销也是如此。但在“理论上”它是可行的。 FWIW我不认为shrinkwrap对子依赖关系有任何帮助。

我推荐这门类(class)(我知道这不是您所要求的 - 但在我看来这是最好的方法):

  1. 对库进行 fork /分支并进行更改。
  2. 然后发出拉取请求(返回主分支)
  3. 在它被合并回来之前,您可以通过 package.json 中的 GIT url 引用它

来自:https://docs.npmjs.com/files/package.json

git+ssh://git@github.com:npm/npm.git#v1.0.27

git+ssh://git@github.com:npm/npm#semver:^5.0

git+https://isaacs@github.com/npm/npm.git

git://github.com/npm/npm.git#v1.0.27

关于node.js - 如何更新间接引用的 Node 模块的版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46432787/

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