我想在console.log
调用之后触发一些操作,但是我不想自己覆盖console.log
,因为我不想丢失日志位置。
我正在研究如何使它看起来不错,但代理服务器看起来不错,但尝试使用它们:
var consoleLogProxyHandler = {
apply: function (target, thisArg, argumentsList) {
return target.apply(void 0, argumentsList);
}
};
var consoleLogProxy = new Proxy(console.log, consoleLogProxyHandler);
console.warn("this is line 7");
consoleLogProxy("this is line 3 :(");
但是我仍然失去控制台位置。
如果我仅代理控制台并监听日志调用,然后返回console['callKey']
,我不会失去位置,但不会得到参数(即提供给控制台的文本)。
所以现在我正在考虑是否可以在console.log完成后触发某种事件或类似事件,但是我没有找到任何相关的方法。
是否存在类似的选项?
编辑:所需功能:
1. onConsoleLog(message) {
2. // I have here the args
3. maybeAServerLog('the user logged ' + message)
4. }
5.
6. // some magic here...
7.
8. console.log('hello');
9. hello - script.js line 8
10. the user logged hello - script.js line 3