在Node.js的模塊,我寫我想打開一個文件 - 即,與fs.readFile()
凹口 - 包含在同一目錄作爲我模塊。我的意思是它在與./node_modules/<module_name>/index.js
文件相同的目錄中。在Node.js中,我該如何判斷`this`模塊的路徑?
它看起來像它們由fs
模塊相對於在其中Node.js的啓動目錄中的走位執行的所有相對路徑的操作。因此,我想我需要知道如何獲取當前正在執行的Node.js模塊的路徑。
謝謝。
在Node.js的模塊,我寫我想打開一個文件 - 即,與fs.readFile()
凹口 - 包含在同一目錄作爲我模塊。我的意思是它在與./node_modules/<module_name>/index.js
文件相同的目錄中。在Node.js中,我該如何判斷`this`模塊的路徑?
它看起來像它們由fs
模塊相對於在其中Node.js的啓動目錄中的走位執行的所有相對路徑的操作。因此,我想我需要知道如何獲取當前正在執行的Node.js模塊的路徑。
謝謝。
大衛瀕臨麪包車在評論中提到的,正確的解決方法是使用__dirname
。此全局變量將返回當前正在執行的腳本的路徑(即,您可能需要使用../
才能到達模塊的根目錄)。
例如:
var path = require("path");
require(path.join(__dirname, '/models'));
只是爲了節省從一個頭痛的人。
爲什麼不'path.join'? – 2014-06-19 11:38:12
您可以使用'__dirname'和'__filename'獲取有關模塊位置的信息。 – Pindatjuh 2011-04-14 14:12:38