【Web】Electron:第一个桌面程序

news/2024/10/5 8:20:54/

Electron 是一个开源框架,使开发者能够使用 HTML、CSS 和 JavaScript 构建跨平台的桌面应用程序。通过 Electron,开发者可以将网页技术应用于桌面软件开发,从而利用现有的网页技术栈构建功能强大的桌面应用。

下载 Electron

虽然 Electron 可以通过 npm 安装,但由于某些网络问题或权限问题,可能会导致安装失败。因此,本指南将介绍如何直接从 Electron 的 GitHub Releases 页面下载 Electron 并使用。

  • 访问 Electron Releases 页面
    打开 Electron Releases 页面。

  • 选择版本
    找到你想要下载的 Electron 版本,通常选择最新版本。

  • 下载适合的文件
    根据你的操作系统下载适合的预编译二进制文件。对于 Windows,通常下载 electron-vX.X.X-win32-x64.zip 文件(X.X.X 为版本号)。

解压文件

将下载的 .zip 文件解压到你选择的目录,例如 D:\code\electron

创建最小的 Electron Demo

接下来,我们将创建一个简单的 Electron 应用程序。

  • 创建项目目录
    在你选择的工作目录下创建一个新文件夹,例如 D:\code\my-electron-app

    mkdir D:\code\my-electron-app
    cd D:\code\my-electron-app
    
  • 创建 index.html 文件
    在项目目录下创建一个 index.html 文件,并添加以下内容:

    <!DOCTYPE html>
    <html>
    <head><title>Hello Electron</title> <!-- 设置网页标题 -->
    </head>
    <body><h1>Hello, Electron!</h1> <!-- 页面显示的主标题 -->
    </body>
    </html>
    
  • 创建 index.js 文件
    在同一目录下创建一个 main.js 文件,并添加以下内容:

    javascript">// 引入 Electron 模块
    const { app, BrowserWindow } = require('electron');// 创建主窗口的函数
    function createWindow() {// 创建一个新的浏览器窗口const win = new BrowserWindow({width: 800, // 窗口宽度height: 600, // 窗口高度webPreferences: {nodeIntegration: true // 启用 Node.js 集成,以便在渲染进程中使用 Node.js API}});// 加载 index.html 文件到窗口win.loadFile('index.html');
    }// 当 Electron 完成初始化时调用 createWindow 函数
    app.whenReady().then(createWindow);// 处理所有窗口关闭事件
    app.on('window-all-closed', () => {// 对于非 macOS 系统,退出应用if (process.platform !== 'darwin') {app.quit();}
    });// 处理应用被激活时的事件
    app.on('activate', () => {// 如果没有打开的窗口,则重新创建一个窗口if (BrowserWindow.getAllWindows().length === 0) {createWindow();}
    });

运行 Electron 应用

  • 在命令行中运行 Electron
    打开命令行,导航到你的应用程序目录,然后运行 Electron:

    cd D:\code\my-electron-app
    path\to\your\electron\executable\electron.exe .
    

    例如,如果你将 Electron 解压到 D:\code\electron,命令应为:

    D:\code\electron\electron.exe .
    

打包你的应用

如果你希望打包应用,可以使用 Electron 的打包工具。

  • 下载 Electron Packager
    下载 Electron Packager。

  • 使用 Electron Packager 打包

    • electron-packager 解压到你的项目目录。
    • 使用以下命令打包你的应用:
    path\to\your\electron\packager\executable\electron-packager . MyApp --platform=win32 --arch=x64
    

    这将生成一个 MyApp-win32-x64 文件夹,其中包含你的应用的可执行文件。


http://www.ppmy.cn/news/1534094.html

相关文章

【架构】NewSQL

文章目录 NewSQLTiDBTiDB 主要组件特点使用场景安装与部署 推荐阅读 NewSQL NewSQL是一种数据库管理系统(DBMS)的类别&#xff0c;它结合了NoSQL数据库的可扩展性和传统SQL数据库的事务一致性。具体来说&#xff0c;NewSQL数据库旨在解决传统关系型数据库在处理大规模并发事务…

Leecode SQL 184. Department Highest Salary 找出tie

Department Highest Salary 注意&#xff01;要找出 tie 的 highest salary&#xff01; Write a solution to find employees who have the highest salary in each of the departments. Return the result table in any order. The result format is in the following ex…

从 Kafka 到 WarpStream: 用 MinIO 简化数据流

虽然 Apache Kafka 长期以来一直是流数据的行业标准&#xff0c;但新的创新替代方案正在重塑生态系统。其中之一是 WarpStream&#xff0c;它最近在 Confluent 的所有权下进入了新的篇章。此次收购进一步增强了 WarpStream 提供高性能、云原生数据流的能力&#xff0c;巩固了其…

02SQLite

文章目录 索引创建索引删除索引索引优点及缺点&#xff1f;避免使用索引 视图创建视图删除视图 事务事务控制命令通过事务方式对数据库进行访问优势&#xff1a; 索引 创建索引 索引&#xff08;Index&#xff09;是一种特殊查找表&#xff0c;数据库搜索引擎用来加速数据检索…

基于微信小程序爱心领养小程序设计与实现(源码+定制+开发)

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

C语言的内存结构

在电脑中C语言编译器也像其他软件一样占用一块内存空间。 为了更好的利用好这块内存&#xff0c;C语言将他们分为 在C语言中&#xff0c;变量定义的位置不一样&#xff0c;那么在内存中所处的位置也是不一样的。&#xff08;变量在函数内部是存储在栈里&#xff0c;而在函数外部…

Android Camera2 与 Camera API技术探究和RAW数据采集

Android Camera2 Android Camera2 是 Android 系统中用于相机操作的一套高级应用程序接口&#xff08;API&#xff09;&#xff0c;它取代了之前的 Camera API。以下是关于 Android Camera2 的一些主要信息&#xff1a; 主要特点&#xff1a; 强大的控制能力&#xff1a;提供…

Python | Leetcode Python题解之第450题删除二叉搜索树中的节点

题目&#xff1a; 题解&#xff1a; class Solution:def deleteNode(self, root: Optional[TreeNode], key: int) -> Optional[TreeNode]:cur, curParent root, Nonewhile cur and cur.val ! key:curParent curcur cur.left if cur.val > key else cur.rightif cur i…