请问如何拆分`export const registerIpcMainHandlers = () => {...}`里面的方法呢?

作者站长头像
站长
· 阅读数 6

我目前有一个文件(mainHandler.ts),里面有如下内容:

export const registerIpcMainHandlers = () => {
  ipcMain.on('message1'  , (event, data) => {
    console.log(`Message received from ${event.sender.id}: ${data}`);
    event.sender.send('response', 'Response message from main process.');
  });

  ipcMain.on('message2'  , (event, data) => {
    console.log(`Message received from ${event.sender.id}: ${data}`);
    event.sender.send('response', 'Response message from main process.');
  });
  ...
}

现在我想要拆分里面的一些监听方法到其他文件去(例如:subHandlers/handler1.ts):

mainHandler.ts
subHandlers/
  handler1.ts

应该怎么做呢?应该如何把subHandlers/handler1.ts中的on方法们引入到:registerIpcMainHandlers里面去呢?

回复
1个回答
avatar
test
2024-06-29
// subHandlers/handler1.ts
import { ipcMain } from 'electron';

export const handleMessage1 = () => {
  ipcMain.on('message1', (event, data) => {
    console.log(`Message received from ${event.sender.id}: ${data}`);
    event.sender.send('response', 'Response message from main process.');
  });
};

export const handleMessage2 = () => {
  ipcMain.on('message2', (event, data) => {
    console.log(`Message received from ${event.sender.id}: ${data}`);
    event.sender.send('response', 'Response message from main process.');
  });
};
// mainHandler.ts
import { handleMessage1, handleMessage2 } from './subHandlers/handler1';

export const registerIpcMainHandlers = () => {
  handleMessage1();
  handleMessage2();
  // ...
};
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容