1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- /**
- * electron 主文件
- */
- import dotenv from 'dotenv';
- import { app, BrowserWindow, ipcMain } from 'electron';
- import is_dev from 'electron-is-dev';
- // @ts-ignore
- import Store from 'electron-store';
- import { join } from 'path';
- const store = new Store();
- // @ts-ignore
- ipcMain.on('store:set', async (e, args) => {
- store.set(args.key, args.value);
- });
- // @ts-ignore
- ipcMain.handle('store:get', async (e, args) => {
- return await store.get(args);
- });
- // @ts-ignore
- ipcMain.on('store:delete', async (e, args) => {
- store.delete(args);
- });
- dotenv.config({ path: join(__dirname, '../../.env') });
- let win = null;
- class createWin {
- // 创建浏览器窗口
- constructor() {
- // @ts-ignore
- win = new BrowserWindow({
- width: 930,
- height: 700,
- frame: false,
- transparent: true,
- webPreferences: {
- devTools: true,
- nodeIntegration: true,
- enableRemoteModule: true,
- },
- });
- // win.webContents.openDevTools()
- // @ts-ignore
- win.maximize();
- // win.maximize()
- const URL = is_dev
- ? `http://localhost:${process.env.PORT}` // vite 启动的服务器地址
- : `file://${join(__dirname, '../../dist/render/index.html')}`; // vite 构建后的静态文件地址
- // @ts-ignore
- win.loadURL(URL);
- }
- }
- app.whenReady().then(() => new createWin());
- app.on('window-all-closed', () => {
- if (process.platform !== 'darwin') {
- app.quit();
- }
- });
- app.on('activate', () => {
- if (BrowserWindow.getAllWindows().length === 0) {
- new createWin();
- }
- });
|