我正在从Error对象中挂钩一个堆栈跟踪,并返回一个callSite对象数组,我想过滤掉Node和本机站点。大多数情况下,这不是问题,我只需在path.relative(process.cwd(), t.getFileName())上运行regex匹配,因为大多数文件都有其完整的路径名。但是,有些模块具有不限定名,例如作为核心模块的events.js,因此该方法将失败。
我有几个主意像..。
events.js不在缓存(require.cache)中,所以也许所有核心模块都是这样,所以如果在缓存中找不到它们,我就可以将它们标记为核心。不过,这似乎有点沉重。有更好的方法吗?
发布于 2016-08-15 02:54:57
答案是使用process.binding或更安全的require('builtin-modules'),因为process.binding不是公共的。
https://stackoverflow.com/questions/38944318
复制相似问题