載入模組
當我們在程式碼中引用模組時,節點首先在必需語句中查詢引用資料夾內的 node_module
資料夾如果模組名稱不是相對的且不是核心模組,Node 將嘗試在當前的 node_modules
資料夾中找到它目錄。例如,如果你執行以下操作,Node 將嘗試查詢檔案 ./node_modules/myModule.js
:
var myModule = require('myModule.js');
如果 Node 無法找到該檔案,它將檢視名為 ../node_modules/myModule.js
的父資料夾。如果它再次失敗,它將嘗試父資料夾並繼續下降,直到它到達根目錄或找到所需的模組。
如果你願意,也可以省略 .js
副檔名,在這種情況下,節點將附加 .js
副檔名並搜尋該檔案。
載入資料夾模組
你可以使用資料夾的路徑來載入模組,如下所示:
var myModule = require('./myModuleDir');
如果這樣做,Node 將在該資料夾內搜尋。Node 將假設此資料夾是一個包,並將嘗試查詢包定義。該包定義應該是名為 package.json
的檔案。如果該資料夾不包含名為 package.json
的包定義檔案,則包入口點將採用預設值 index.js
,在這種情況下,Node 將檢視路徑 ./myModuleDir/index.js
下的檔案。
在任何資料夾中找不到模組的最後一種方法是全域性模組安裝資料夾。