获取该模块正在运行的__dirname?
有没有一种方式,我的模块可以得到它正在运行一个函数文件的__dirname
? 就像是:
module.js
module.exports.dir = function(){ console.log(__dirname); }
file.js
var module = require("./module.js"); module.dir(); // /home/user/dir/file.js instead of /home/user/dir/module.js
你可以得到主模块(导入当前模块的模块)名称,使用path模块可以得到它的目录
const {dirname} = require("path"); module.exports.dir = function () { console.log(dirname(require.main.filename)) }
这里如果模块自己运行require.main.filename将等于它自己,但是如果它的导入会给你它的import商的名字