在主进程的话,可以定义一个继承 Event Emitter 的通讯类,通过在不同js里面引入该类,实现通讯机制。

参考代码

通讯类 Event

import { EventEmitter } from 'events' export default new class Event extends EventEmitter { // 首次使用构造器实例 constructor() { super() if (!Event.instance) { Event.instance = this } return Event.instance } }

测试类test1.js

import event from './event' export default class Test1 { constructor() { // 监听事件 event.on('test2-msg', (data) => { console.log(data, '来自test2') }) } }

测试类test2.js

import event from './event' export default class Test2 { constructor() { event.emit('test2-msg', '我是test2发来的消息') } }

测试

import Test1 from './test1' import Test2 from './test2' new Test1() new Test2()

控制台返回结果

我是test2发来的消息 来自test2