qiao-x-logger

3.8.5 • Public • Published

qiao-x-logger

npm version npm downloads

Electron 中日志相关的操作封装,详见:Electron-开发实践:本地日志

install

安装

npm i qiao-x-logger

use

使用

// cjs
const { Logger } = require('qiao-x-logger');

// mjs
import { Logger } from 'qiao-x-logger';

// logger
const logger = Logger('qiao-x-logger');

main

主进程代码

initLogger

初始化logger,只有初始化logger后其他方法才可以使用

  • logPath
    • 类型: string
    • 说明: 必填,日志路径
  • logLevel
    • 类型: string
    • 说明: 日志级别,默认为debug
initLogger(logPath, logLevel);

logger

  • methodName
    • 类型: string
    • 说明: 必填,方法名
  • msg
    • 类型: any
    • 说明: 要打印的信息,可以传多个
  • return
// info
logger.info('method info', 'msg1', 'msg2', 'msg3');

// warn
logger.warn('method warn', 'msg1', 'msg2', 'msg3');

// error
logger.error('method error', 'msg1', 'msg2', 'msg3');

ipc

ipc代码

logIPCInit

主进程中初始化ipc监听,需要和渲染进程中preload对应使用

  • logPath
    • 类型: string
    • 说明: 日志存放的位置
  • logLevel
    • 类型: string
    • 说明: 日志级别,默认为debug级别
logIPCInit();

preload

preload代码,由于preload中不能引入npm包,所以需要手动添加

// === log-preload.js ===
// electron
import { ipcRenderer } from 'electron';

/**
 * logIPC
 * @param {*} msg
 * @param {*} type info,warn,error
 */
export const logIPC = (msg, type) => {
  ipcRenderer.send('ipc-log', { msg, type });
};

// === preload.js ===
// electron
import { contextBridge } from 'electron';

// custom preload
import { logIPC } from 'log-preload.js';

// preload
contextBridge.exposeInMainWorld('electron', {
  logIPC,
});

// === 使用 ===
window.electron.logIPC(msg, type);

Readme

Keywords

Package Sidebar

Install

npm i qiao-x-logger

Weekly Downloads

8

Version

3.8.5

License

MIT

Unpacked Size

8.89 kB

Total Files

8

Last publish

Collaborators

  • npm_insistime