我有一个Node类,我在许多项目模块中导入一旦导入到必需的模块中,我创建了它的对象,然后调用该对象的相关方法。
我不想使用 module.parent.filename ,因为它只提供父文件的文件名而不提供其他文件的文件名。在一些R& D之后,我开始知道有一个名为 stack-trace 的模块可以为我提供类似的功能。但是,当我尝试将代码放入我的类时,我得到了编写代码的文件本身的名称,而不是调用该类对象的文件名
const stackTrace = require('stack-trace');
var trace = stackTrace.get()
console.log(trace[0].getFileName())
答案 0 :(得分:0)
The manual州,stackTrace.get()
:
返回
CallSite
个对象的数组,其中元素0
是当前的调用网站。
您不想要当前的通话网站,但需要使用前一个网站,因此您需要使用trace[1].getFileName()