我正在尝试创建一个输出消息的记录器以及从中调用它的类,如下所示:
const __log = (...values: Array<any>) =>
console.log("%c" + this.constructor["name"], CLASS_STYLE, ...values);
这很好用,但我想保持干燥,如果可能的话,一次导入它并在我需要的地方打电话。我正考虑将其添加为window.__log
,但当然此的范围存在问题。
我正在寻找某种bind()
,call()
,apply()
诡计/巫术来实现这项工作(;
示例planker在这里:http://plnkr.co/edit/sLdAsbv8FgO4V1qfqQZM(使用Angular2组件)。删除课程// const __log ...
中的App
评论会显示我想要的内容。
答案 0 :(得分:0)
您可以通过这样做来存档您想要的内容:
function __log(...values: Array<any>)
{
console.log("%c" + arguments.callee.caller.name, CLASS_STYLE, ...values)
}
如果您想深入了解,请参阅以下有关获取完整调用堆栈的更多信息:link