当前位置: 首页 > article >正文

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

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 文件,并添加以下内容:

    // 引入 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.kler.cn/news/328330.html

相关文章:

  • Python与C#关于switch的使用区别
  • [python][pipenv]pipenv的使用
  • 输出 / 目录下所有目录文件的大小并排序
  • 如何改变音频声音大小?关于改变音频大小的方法介绍
  • NLP任务之文本分类(情感分析)
  • 简单vue指令实现 el-table 可拖拽表格功能
  • Qt C++设计模式->享元模式
  • Windows远程Kylin系统-xrdp
  • CTF中文件包含
  • 【优选算法】(第三篇)
  • IDEA 系列产品 下载
  • 前后端传参
  • Android 已经过时的方法用什么新方法替代?
  • 通信工程学习:什么是SMTP简单邮件传输协议
  • windows C++-计划组
  • 机器学习西瓜书——线性判别分析LDA
  • 使用PyTorch实现自然语言处理:从基础到实践
  • Go基础学习07-map注意事项;多协程对map的资源竞争;sync.Mutex避免竟态条件
  • QEMU使用Qemu-Guest-Agent传输文件、执行指令等
  • http增删改查四种请求方式操纵数据库
  • k8s 1.28.2 集群部署 ingress 1.11.1 包含 admission-webhook
  • Qt 中的 QListWidget、QTreeWidget 和 QTableWidget:简化的数据展示控件
  • 开发微信小程序 基础03
  • scala 2.12 error: value foreach is not a member of Object
  • 低代码用户中心:构建高效便捷的用户管理平台
  • VUE 开发——AJAX学习(二)
  • 51单片机学习第五课---B站UP主江协科技
  • 【网络安全】消息鉴别
  • 五.海量数据实时分析-FlinkCDC+DorisConnector实现数据的全量增量同步
  • Require:基于雪花算法完成一个局部随机,全局离散没有热点切唯一的数值Id生成器。