【问题标题】:`npm link` works even when I do not `npm link <package_name>` in the desired directory`npm link` 即使我不在所需目录中`npm link <package_name>` 也能工作
【发布时间】:2017-08-15 15:46:49
【问题描述】:

我阅读了 npmjs.com 上的 npm documentation 链接本地包,它说我需要分两步完成:

  1. 导航到本地包目录并运行npm link
  2. 导航到我打算在其中使用此包的包并运行npm link &lt;package_name&gt;

例如,如果我想在packageA 中使用packageB 作为依赖项,我需要进入packageB 的目录,运行npm link,然后在packageA 中执行npm link packageB' s 目录。

但是,在实践中,当我只是在packageB 的目录中访问npm link,然后在packageA 中访问require('packageB'),它就可以工作,并且packageB 中的任何更改都会立即反映在packageA 中。

谁能告诉我这是怎么回事?

【问题讨论】:

    标签: node.js ubuntu npm


    【解决方案1】:

    事实上,当您执行“npm link”时,它会在您的系统上全局创建一个指向您的包的链接(您知道这就像您执行“npm install -g xxx”时一样)。

    当您通过 Node 需要一个包时,它会检查多个目录(当前的 node_modules、父级...和全局目录)

    【讨论】:

    • 明白了,但是为什么文档说明在目标目录中执行npm link &lt;package_name&gt; 是强制性的?
    猜你喜欢
    • 2014-08-24
    • 1970-01-01
    • 2019-01-28
    • 2019-03-06
    • 2021-06-16
    • 1970-01-01
    • 2023-01-28
    • 2020-08-09
    • 1970-01-01
    相关资源
    最近更新 更多