From ffcb16809eec60b4ca598bfc8f04537df91e9381 Mon Sep 17 00:00:00 2001 From: gaoshuaixing Date: Wed, 7 Sep 2022 15:03:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=8A=E4=B8=8B=E6=96=87?= =?UTF-8?q?=E9=9A=94=E7=A6=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/config/config.default.js | 4 +++- electron/preload/bridge.js | 5 +++++ frontend/src/utils/ipcRenderer.js | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 electron/preload/bridge.js diff --git a/electron/config/config.default.js b/electron/config/config.default.js index 8c2fac9..cf18025 100644 --- a/electron/config/config.default.js +++ b/electron/config/config.default.js @@ -1,6 +1,7 @@ 'use strict'; const dayjs = require('dayjs'); +const path = require('path'); /** * 默认配置 @@ -52,8 +53,9 @@ module.exports = (appInfo) => { minHeight: 650, webPreferences: { //webSecurity: false, - contextIsolation: false, // 设置此项为false后,才可在渲染进程中使用electron api + contextIsolation: false, // false->可在渲染进程中使用electronApi,true->需要bridge.js(contextBridge) nodeIntegration: true, + preload: path.join(appInfo.baseDir, 'preload', 'bridge.js'), }, frame: true, show: true, diff --git a/electron/preload/bridge.js b/electron/preload/bridge.js new file mode 100644 index 0000000..bdd2999 --- /dev/null +++ b/electron/preload/bridge.js @@ -0,0 +1,5 @@ +const { contextBridge, ipcRenderer } = require('electron') + +contextBridge.exposeInMainWorld('electron', { + ipcRenderer: ipcRenderer, +}) \ No newline at end of file diff --git a/frontend/src/utils/ipcRenderer.js b/frontend/src/utils/ipcRenderer.js index 17695d2..c2629be 100644 --- a/frontend/src/utils/ipcRenderer.js +++ b/frontend/src/utils/ipcRenderer.js @@ -1,4 +1,4 @@ -const { ipcRenderer: ipc } = window.require && window.require('electron') || {} +const { ipcRenderer: ipc } = (window.require && window.require('electron')) || window.electron || {} /** * (将废弃,请使用 $ipcInvoke 代替)异步调用主函数