// ============================================================ // preload/base.ts — 基础 ipcRenderer 桥接 // // 提供安全的 IPC 通信接口,暴露给渲染进程 // ============================================================ import { ipcRenderer, contextBridge } from 'electron'; /** 基础 IPC 通信 API */ export function exposeBaseIpc(): void { contextBridge.exposeInMainWorld('ipcRenderer', { on(...args: Parameters) { const [channel, listener] = args; return ipcRenderer.on(channel, (event, ...args) => listener(event, ...args)); }, off(...args: Parameters) { const [channel, ...omit] = args; return ipcRenderer.off(channel, ...omit); }, send(...args: Parameters) { const [channel, ...omit] = args; return ipcRenderer.send(channel, ...omit); }, invoke(...args: Parameters) { const [channel, ...omit] = args; return ipcRenderer.invoke(channel, ...omit); }, }); }