electronAPI.ts 974 B

1234567891011121314151617181920
  1. import { contextBridge, ipcRenderer } from "electron";
  2. contextBridge.exposeInMainWorld("electronAPI", {
  3. max: (...res: any) => ipcRenderer.invoke("max", ...res),
  4. min: (...res: any) => ipcRenderer.invoke("min", ...res),
  5. middle: (...res: any) => ipcRenderer.invoke("middle", ...res),
  6. close: (...res: any) => ipcRenderer.invoke("close", ...res),
  7. send: (channel, data) => ipcRenderer.send(channel, data),
  8. on: (channel, callback) =>
  9. ipcRenderer.on(channel, (event, ...args) => callback(...args)),
  10. removeAllListeners: (channel) => ipcRenderer.removeAllListeners(channel),
  11. getWindowWidth: () => ipcRenderer.invoke("get-window-info"),
  12. // 添加新的监听方法
  13. onNewNotification: (callback) =>
  14. ipcRenderer.on("new-notification", (event, data) => callback(data)),
  15. removeNotificationListener: () =>
  16. ipcRenderer.removeAllListeners("new-notification"),
  17. sendUidToMain: (uid: number) => ipcRenderer.send("login-uid", uid),
  18. // ...sqlitePreload,
  19. });