從節點模組載入模組
模組可以是 require
d 而不使用相對路徑,只需將它們放在名為 node_modules
的特殊目錄中即可。
例如,從檔案 index.js
到 require
一個名為 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
目錄中的 require
d。如果我們有以下目錄結構:
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 登錄檔安裝新模組,也可以自己建立。