gpt4 book ai didi

node.js - 需要链接的 npm 模块的依赖项不起作用?

转载 作者:太空宇宙 更新时间:2023-11-03 23:01:12 25 4
gpt4 key购买 nike

我的本​​地模块 A 通过 npm link 链接到本地​​模块 B。并且模块 B 已作为依赖项使用react。当模块A需要react时,找不到该模块。

如果这被视为“正常”包(没有 npm 链接),则模块 A 在安装模块 B 时将在 node_modules 下使用react。

有什么方法可以在使用 npm link 时要求模块 A 作出 react ,而无需手动将其列为依赖项?

最佳答案

简短回答:不。

更长的答案: npm link 只是通过全局文件夹在模块 A 的 node_modules 中创建到模块 B 的符号链接(symbolic link)。它不像 npm install 那样提供任何依赖项解析/安装/扁平化。例如,如果您同时在模块 A 和 B 上进行开发,这非常有用;对模块 B 中已安装软件包的更改不需要重新解析/安装/展平 A 中的软件包树。

您可能会弄乱 NODE_PATH 环境变量,以在运行 A 时将模块 B 的 node_modules 指定为 require 的源,并在 A 中有效地使用 B 的依赖项。

但是,请重新思考为什么要创建这样的隐形依赖项。您选择破坏模块的封装。如果模块 A 需要 react,A 需要在 package.json 中指定。当您稍后决定将模块 A 用于不包含 B 的其他项目时,就没有问题了。当您决定从模块 B 中删除 react 时,您不会破坏 A。

关于node.js - 需要链接的 npm 模块的依赖项不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47819377/

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