将electron devtools中的日志保存到文件中

pobjuy32  于 2023-05-15  发布在  Electron
关注(0)|答案(1)|浏览(347)

我正在使用Angular 5处理Electron应用程序的渲染过程,是否有一种方法可以通过编程方式导出控制台?
我需要一种方法来同步日志记录数据的文件,所以,我可以随时审查它没有打开电子devtools和保存为选项,我需要它的编程
我保存我自己的日志,但如果有一个模块,记录一个错误,我需要得到整个控制台日志历史,并将其导出到日志文件

chhkpiq4

chhkpiq41#

您可以使用**electron-log,这是Electron应用程序的日志记录模块。它可以不使用电子。你应该使用ngx-electron**。
首先,安装electron-log

npm install electron-log

在电子的主要过程中需要它。

const logger = require('electron-log');

然后安装ngx-electron

npm install ngx-electron

ngx-electron暴露了一个名为NgxElectronModule的模块,需要将其导入到AppModule中。

import {NgModule} from '@angular/core';
import {BrowserModule} from '@angular/platform-browser';
import {NgxElectronModule} from 'ngx-electron';
import {AppComponent} from './app.component';

@NgModule({
    declarations: [],
    imports: [
      BrowserModule,
      NgxElectronModule
    ],
    bootstrap: [AppComponent]
})
export class AppModule {

}

导入模块后,您可以轻松地使用angular DI来请求ElectronService

import {Component} from '@angular/core';
import {ElectronService} from 'ngx-electron';

@Component({
  selector: 'my-app',
  templateUrl: 'app.html'
})
export class AppComponent {

    logger

    constructor(private _electronService: ElectronService) { 
        // this should be in init()
        if(this._electronService.isElectronApp) {
            this.logger = this._electronService.remote.require("electron-log");
        }
    }

    public testLogger() {
        this.logger.info('this is a message from angular');
    }
}

在此之后,您应该能够在组件中使用electron-log,只需记住组件中的import {ElectronService} from 'ngx-electron';this.logger = this._electronService.remote.require("electron-log");

相关问题