從節點模組載入模組

模組可以是 required 而不使用相對路徑,只需將它們放在名為 node_modules 的特殊目錄中即可。

例如,從檔案 index.jsrequire 一個名為 foo 的模組,你可以使用以下目錄結構:

index.js
 \- node_modules
  \- foo
   |- foo.js
   \- package.json

模組應與 package.json 檔案一起放在目錄中。package.json 檔案的 main 欄位應指向模組的入口點 - 這是使用者執行 require('your-module') 時匯入的檔案。如果沒有提供,main 預設為 index.js。或者,你可以通過附加 require 呼叫的相對路徑來引用相對於模組的檔案:require('your-module/path/to/file')

模組也可以是檔案系統層次結構中的 node_modules 目錄中的 required。如果我們有以下目錄結構:

my-project
\- node_modules
 |- foo   // the foo module
  \- ...
 \- baz   // the baz module
  \- node_modules
   \- bar   // the bar module

我們將能夠使用 require('foo')bar 中的任何檔案中提取模組 foo

請注意,節點將僅匹配檔案系統層次結構中最接近檔案的模組,從(檔案的當前目錄/ node_modules)開始。Node 以這種方式將目錄匹配到檔案系統根目錄。

你可以從 npm 登錄檔或其他 npm 登錄檔安裝新模組,也可以自己建立。