import { ipcMain, app,shell } from 'electron'
import { mainWindow } from './index'
// 打开系统默认浏览器到指定的url
ipcMain.on('open-url', (event, url) => {
shell.openExternal(url)
})
// 打开系统音频设置页面
ipcMain.on('get-audio-devices',async (event) => {
shell.openPath('mmsys.cpl')
})
// 退出
ipcMain.on('window-close', () => {
app.quit()
})
//最大化
ipcMain.on('window-max', () => {
if(mainWindow.isMaximized()){ // 为true表示窗口已最大化
mainWindow.restore();// 将窗口恢复为之前的状态.
}else{
mainWindow.maximize();
}
})
//最小化
ipcMain.on('window-min', () => {
mainWindow.minimize()
})
// 获取版本信息
ipcMain.on('request-data', (event, arg) => {
// 当渲染进程发送 'request-data' 消息时触发
const data = { version: app.getVersion() };
event.reply('response-data', data); // 向渲染进程回复数据
});
页面使用方法,例:
// 获取当前版本信息
window.electron.ipcRenderer.send('request-data')
window.electron.ipcRenderer.on('response-data', (e, data) => {
version.value = data.version
window.localStorage.setItem('win', JSON.stringify(data))
})