我在我的项目中使用
Angular2-logger.
import { Logger } from "angular2-logger/core"; ... logger: Logger; ... logger.info('<log string>')
输出打印在控制台中,如下图所示
Angular2-logger或替代类中是否有任何选项可用于显示我调用logger方法的文件名和行号? (与图像波纹管一样的console.log(…)相同)
有什么解决方案吗?
我通过这种方式找到了解决方案:
1-我创建了一个LoggerService.
2-我将服务导入app.module.ts并将其用作提供者.
3- LoggerService看起来像这样:
import { Injectable } from '@angular/core'; @Injectable() export class LoggerService { public error(message) { try { throw new Error(); } catch (e) { console.log(e.stack); const stackTraces = e.stack.split('at'); const fileList = stackTraces[2].substr( stackTraces[2].lastIndexOf('/src'),stackTraces[2].length - 1 ).replace(')','' ); const functionName = stackTraces[2].substr(0,stackTraces[2].indexOf('(') - 1); // Do whatever you want,use console.log or angular2-logger service console.log(message); } } }