diff --git a/main.js b/main.js index d5a19ab..86d7857 100644 --- a/main.js +++ b/main.js @@ -160,6 +160,10 @@ app.on('ready', () => { startNumber++ } }); + // 更新 + ipcMain.handle('updateHandle', () => { + updateHandle() + }); // socket ipcMain.handle('startSignalr', (event, user) => { startSignalr(user) diff --git a/preload.js b/preload.js index 4879689..22bc873 100644 --- a/preload.js +++ b/preload.js @@ -91,6 +91,10 @@ window.electron = { setEnv: (str) => { ipcRenderer.invoke('setEnv', str) }, + // 更新 + updateHandle: () => { + ipcRenderer.invoke('updateHandle') + }, // 通知下载最新的包 onDownload: (type) => { ipcRenderer.invoke('updateDownload', type) diff --git a/src/App.tsx b/src/App.tsx index 7e28ca6..3e264ca 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -260,6 +260,12 @@ const App: React.FC = () => { storage.removeItem('user') navigate('/login') } + } else if (e.key === 'reconnect') { + if (e.value == true) { + if (location.hash.indexOf('/meeting') === -1) { + window.electron.updateHandle() + } + } } }; return ( diff --git a/src/render.d.ts b/src/render.d.ts index ad0eae5..0aeefea 100644 --- a/src/render.d.ts +++ b/src/render.d.ts @@ -25,6 +25,7 @@ export interface IElectronAPI { quitAndInstall: (callBack: Function) => void; isOpenWindows: (callBack: Function) => void; setEnv: (str: string) => any; + updateHandle: () => any; getVersion: () => Promise; isVisible: () => Promise; setRegistry: (uuid: string) => any;