在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