阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      Node.js module 从node_modules 目录加载

      Node.js module 从node_modules 目录加载

      如果传递给 require() 的模块标识符不是一个核心模块,也没有以 '/''../''./' 开头,则 Node.js 会从当前模块的父目录开始,尝试从它的 /node_modules 目录里加载模块。

      Node.js 不会附加 node_modules 到一个已经以 node_modules 结尾的路径上。

      如果还是没有找到,则移动到再上一层父目录,直到文件系统的根目录。

      例子,如果在 '/home/ry/projects/foo.js' 文件里调用了 require('bar.js'),则 Node.js 会按以下顺序查找:

      • /home/ry/projects/ node_modules/bar.js
      • /home/ry/ node_modules/bar.js
      • /home/node_modules/bar.js
      • / node_modules/bar.js

      这使得程序本地化它们的依赖,避免它们产生冲突。

      通过在模块名后包含一个路径后缀,可以请求特定的文件或分布式的子模块。 像react等很多包引用经常能看到 require(‘xxx/uuu’) 这样的写法

      例如: require('example-module/path/to/file')

      会把 path/to/file 解析成相对于 example-module 的位置。 后缀路径同样遵循模块的解析语法


      更多内容请参考:Node.js module 模块,或者通过 点击对应菜单 进行查看;


      目录
      本文目录
      目录