import { app, BrowserWindow, ipcMain } from "electron"; import { printUtils } from './printUtils' const NODE_ENV = process.env.NODE_ENV app.whenReady().then(() => { const win = new BrowserWindow({ title: "银收客", width: 1200, height: 800, fullscreenable: true, fullscreen: true, simpleFullscreen: true, frame: false, webPreferences: { // 集成网页和 Node.js,也就是在渲染进程中,可以调用 Node.js 方法 nodeIntegration: true, contextIsolation: false, }, }); // You can use `process.env.VITE_DEV_SERVER_URL` when the vite command is called `serve` if (process.env.VITE_DEV_SERVER_URL) { win.loadURL(process.env.VITE_DEV_SERVER_URL); // 使用vite开发服务的url路径访问应用 } else { win.loadFile(path.join(__dirname, '../dist/index.html')); // 打包后使用文件路径访问应用 } if (NODE_ENV == 'development') { win.webContents.openDevTools(); } app.on("activate", () => { // 在 macOS 系统内, 如果没有已开启的应用窗口 // 点击托盘图标时通常会重新创建一个新窗口 if (BrowserWindow.getAllWindows().length === 0) { createWindow() }; }); ipcMain.on("quitHandler", (_, msg) => { app.quit(); }); ipcMain.on('printerInfoSync', async (event, params) => { await printUtils(params) }) }); app.on("window-all-closed", () => { if (process.platform !== "darwin") app.quit(); });