# electron_learn **Repository Path**: songkangle/electron_learn ## Basic Information - **Project Name**: electron_learn - **Description**: electron基础、项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-01-06 - **Last Updated**: 2025-01-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## Electron - 使用 HTML、CSS、JavaScript,来构建跨平台的桌面应用程序。 - Electron 的本质就是结合了 Chromium 与 node.js。(Chrome 是基于 Chromium 来开发的) - Electron = chromium + nodeJs + Native API ### Electron 流程模型 Main(主进程 node 环境) + 多个渲染进程(浏览器环境) ### 完善窗口行为 - window: 应用所有的窗口都关闭,那么应用就自动退出了。 - macOS: 应用都退出了,Dock 栏里还有该应用(进程还在)。 ### 预加载脚本 执行顺序:主进程->预加载脚本->渲染进程 ### 进程通讯 - 渲染进程 -> 主进程(单向) ### 打包 1. 安装 electron-builder 2. 配置脚本 ```json // package.json { "name": "01quick-start", "version": "1.0.0", "main": "main.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "nodemon --exec electron .", "build": "electron-builder" }, "build": { "appId": "com.com.com", // 应用程序的唯一标识符 // 打包windows平台安装包的具体配置 "win": { "icon": "./logo.ico", // 应用图标 "target": [ { "target": "nsis", // 指定使用MSIS作为安装程序格式 "arch": ["x64"] // 生成64位安装包 } ] }, "nsis": { "oneClick": false, // 设置为false,使安装程序显示安装向导界面,而不是一件安装 "permachine": true, // 允许每台机器安装一次,而不是每个用户都安装 "allowToChangeInstallationDirectory": true // 允许用户在安装过程中选择安装目录 } }, "author": "skl", "license": "ISC", "description": "this is a electron", "devDependencies": { "electron": "^33.2.1", "nodemon": "^3.1.9" }, "dependencies": { "electron-builder": "^25.1.8" } } ```