繁体   English   中英

从Appcelerator Titanium获取堆栈跟踪或当前文件?

[英]Getting the stack trace or current file from Appcelerator Titanium?

我想建立一个日志机制,其中还包括从中写入log语句的文件。

例如,如果我有一个文件:

//foo.js
log("stuff");

然后,我希望log功能能够在log中包含文件名"foo.js"

这可能吗? 我到处都找不到任何东西。

您可以触发新错误并在内部捕获它。 这样,您可以使用myError.stack访问堆栈跟踪,这将打印出导致执行点的文件列表。 例:

try {
    throw new Error('Trace!');
} catch (err) {
    console.log(err.trace);
}

如果您还有其他问题,请告诉我!

或者,您可以抛出错误并在uncaughtException事件中处理它。 请注意,仅应出于开发目的进行此操作。

除了触发新错误外,另一种可能的解决方案是创建并维护自己的全局数组,该数组包含已打开的所有控制器的名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM