跳到正文
产品桌面工具TASTECAD图纸查看TASTEFILES文件管理TASTEFTP文件传输TASTESSH远程工作空间TASTEZIP压缩与解压开发工具TASTECODERust 集成开发环境TASTESTUDIO集成开发与测试环境TASTEETL数据整合(ETL)服务器TASTEREMOTE远程桌面服务器TASTEGEO空间信息服务器TASTEMAIL邮件工作空间开始使用下载文档购买全部产品
市场
资讯
技术资讯今日开发资讯开发文档编程语言RustTypeScriptJavaScriptPythonGoC#JavaCC++KotlinDartWeb 前端框架Next.jsReactVue.js · NuxtSvelteKitAngular服务端框架Spring BootDjangoFastAPIASP.NET CoreNestJS · Express应用与桌面框架TauriFlutterReact NativeElectron算法算法基础核心算法进阶算法实用算法
社区项目开发日志提示词AI 工具问题作品展示社区指南
合作技术传授网站构建桌面应用构建发布与支付流水线销售合作伙伴联系我们
服务远程桌面安装包定制
TASTEDEV
产品

桌面工具

TASTECAD复杂图纸,轻松打开TASTEFILES只要需要的文件,最快送达TASTEFTP让文件往来,干净利落TASTESSH你与服务器之间,连接更牢靠TASTEZIP压得更快,解得更稳

开发工具

TASTECODE在一个窗口中完成 Rust 应用的编辑、构建、调试和测试TASTESTUDIO从编辑到远程测试,再到经批准的 AI 修复TASTEETL边看数值,边搬数据

服务器

TASTEREMOTE在自己的服务器上运行的远程桌面TASTEGEO用 Rust 重新构建兼容 GeoServer 的空间信息服务器TASTEMAIL把邮件的主导权拿回自己手中

开始使用

下载所有产品的最新版本文档各产品使用方法购买订阅与永久许可全部产品一览全部产品
全部产品
市场资讯
技术

资讯

今日开发资讯语言、框架、GitHub 与 AI 官方发布开发文档语言、框架与算法指南

编程语言

RustTypeScriptJavaScriptPythonGoC#JavaCC++KotlinDart

框架

Web 前端框架Next.jsReactVue.js · NuxtSvelteKitAngular
服务端框架Spring BootDjangoFastAPIASP.NET CoreNestJS · Express
应用与桌面框架TauriFlutterReact NativeElectron

算法

算法基础复杂度分析 · 排序 · 查找 · 基础数据结构 · 树与堆核心算法图遍历 · 最短路径与最小生成树 · 动态规划 · 贪心算法 · 分治法 · 回溯法进阶算法字符串算法 · 数学与数论 · 位运算 · 线段树 · 并查集实用算法编程面试解题策略 · LRU 缓存 · 限流 · 一致性哈希
查看全部开发文档
社区
项目发现开发者与作品开发日志决策与试错提示词可复用的指令AI 工具问题Claude、Codex、Gemini 的问题与变通办法作品展示已完成的成果社区指南我们如何公开构建
合作
技术传授用 Rust 和 egui 打造原生应用网站构建10 种语言、账户、文档与下载桌面应用构建Rust 和 egui,不用 WebView发布与支付流水线签名、MSI、deb、rpm、AppImage、哈希销售合作伙伴推荐即得 30%联系我们开发、合作与投资咨询
服务
远程桌面用浏览器连接你的电脑安装包定制只装需要的,设置预先放好
购买
ZH
한국어EnglishDeutschEspañolFrançaisItalianoPortuguês (Brasil)日本語简体中文繁體中文
登录
登录
TASTEDEV

从小工具到更好的开发。

support@tastedev.net支持 TASTEDEV
产品产品线购买文档下载市场客户支持
社区项目开发日志提示词AI 工具问题作品展示
政策隐私政策服务条款订阅条款退款政策社区规范
账户登录注册
访客
今天
012345678901234567890123456789012345678901234567890123456789
昨天
012345678901234567890123456789012345678901234567890123456789
累计浏览
0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
公司名称
GXSOFT
法定代表人
CHOI YOUNG GU
营业执照号
853-44-00368
地址
9F V24, 351 Gyeongin-ro, Michuhol-gu, Incheon, Republic of Korea
电话
+82-10-4404-1523
电子邮件
whitecalvin@tastedev.net
个人信息保护负责人
CHOI YOUNG GU

© 2026 TASTEDEV产品信息以已验证的开发源码为准。已发布·持续改进

开发文档
Electron
Electron安装第一个程序分步指南官方文档与参考资料讨论评论

其他框架

Web 前端框架5
Next.jsReactVue.js · NuxtSvelteKitAngular
服务端框架5
Spring BootDjangoFastAPIASP.NET CoreNestJS · Express
应用与桌面框架3
TauriFlutterReact Native

框架 · 2013 年发布

Electron

Electron 是一个开源框架,可用 JavaScript、HTML 和 CSS 构建运行于 Windows、macOS 和 Linux 的桌面应用。

开始阅读指南讨论

Electron 是一个用 Web 技术构建桌面应用程序的开源框架。它把负责渲染的 Chromium 和负责访问操作系统的 Node.js 打包进同一个运行时,因此一套代码就能发布为 Windows、macOS 和 Linux 应用。它于 2013 年在 GitHub 诞生,最初名为 Atom Shell,是 Atom 编辑器的基础,现在是 OpenJS Foundation 旗下的项目。

当熟悉 Web 开发的团队需要快速做出桌面应用时,Electron 的优势最为明显。Visual Studio Code、Slack 和 Discord 的桌面版都基于它构建,你可以直接沿用 React、Vue 等 Web 框架以及整个 npm 生态。由于每个应用都自带一份 Chromium,安装包体积和内存占用通常较大,这一点需要在一开始就考虑进去。

入门时先安装 Node.js,然后用 Electron Forge 创建项目,或者在空项目中添加 electron 包。官方教程会依次讲解主进程、预加载脚本和渲染器的结构,以及它们之间如何通过 IPC 通信。使用 Electron Fiddle 无需搭建项目就能运行小示例,是快速熟悉 API 的好办法。

特点

Web 技术与 Node.js 相结合

Chromium 负责显示 HTML 和 CSS,主进程则通过 Node.js 访问文件系统、网络等操作系统功能。

一套代码,三个平台

同一份 JavaScript 或 TypeScript 代码即可生成 Windows、macOS 和 Linux 应用,并打包成各平台的原生安装程序。

丰富的原生 API

窗口、菜单、托盘图标、通知、文件对话框、剪贴板和自动更新等桌面功能都以 JavaScript API 的形式提供。

多进程安全模型

主进程与渲染进程相互隔离,借助上下文隔离和预加载脚本,只向界面暴露真正需要的功能。

适用场景

  • 代码编辑器与开发者工具

本页目录

  1. 特点
  2. 适用场景
  3. 安装
  4. 第一个程序
  5. 常用工具
  6. 分步指南
  7. 官方文档与参考资料
  8. 使用的语言
  9. 讨论
  10. 评论
  • 聊天与协作软件的桌面客户端
  • 企业内部业务应用
  • 将现有 Web 产品做成桌面应用
  • 安装

    1. 1

      准备 Node.js

      Electron 通过 Node.js 和 npm 安装与运行。请安装 Node.js 的 LTS 版本,并确认能显示两者的版本号。

      node -v && npm -v
    2. 2

      在项目中添加 Electron

      在新文件夹中创建 package.json,并把 electron 安装为开发依赖。然后将 package.json 的 main 字段设为 main.js,并添加运行 electron . 的 start 脚本。

      mkdir my-electron-app && cd my-electron-app && npm init -y && npm install --save-dev electron
    3. 3

      使用 Electron Forge 开始

      如果希望项目一开始就具备打包和发布能力,可以使用官方工具 Electron Forge 的创建命令。在生成的文件夹中运行 npm start 即可启动应用。

      npm init electron-app@latest my-app

    第一个程序

    打开第一个窗口

    main.js 是主进程的入口。应用就绪后,它会创建一个 800×600 的 BrowserWindow,并加载同一文件夹中的 index.html。按照 macOS 的惯例,关闭所有窗口后应用仍会保留,因此只在其他平台上退出应用。在 main.js 旁边放一个简单的 index.html,然后运行 npm start。

    main.js

    const { app, BrowserWindow } = require('electron')
    
    function createWindow() {
      const win = new BrowserWindow({ width: 800, height: 600 })
      win.loadFile('index.html')
    }
    
    app.whenReady().then(() => {
      createWindow()
    
      app.on('activate', () => {
        if (BrowserWindow.getAllWindows().length === 0) createWindow()
      })
    })
    
    app.on('window-all-closed', () => {
      if (process.platform !== 'darwin') app.quit()
    })
    
    npm init -y
    npm install --save-dev electron
    npm pkg set main=main.js scripts.start="electron ."
    npm start

    常用工具

    Electron Forge
    官方的一体化工具,涵盖项目创建、开发运行、打包、生成安装程序和发布。
    electron-builder
    广泛使用的打包工具,支持多平台安装程序、代码签名和自动更新。
    Electron Fiddle
    官方实验工具,可以快速编写小型 Electron 示例,并在不同的 Electron 版本中运行。
    Playwright
    可启动 Electron 应用进行端到端测试,操作窗口并在主进程中执行代码。

    分步指南

    共六章,带你从安装一步步了解 Electron 的核心概念。

    1. Getting Started with Electron英语
    2. Project Structure英语
    3. Core Concepts英语
    4. Data and State英语
    5. Testing英语
    6. Deployment英语

    官方文档与参考资料

    • 官方Electron
    • 官方Electron Documentation
    • 官方Electron Forge
    • 学习Electron Tutorial
    • 学习Electron Fiddle
    • 参考BrowserWindow API
    • 参考Electron Security Checklist
    • 社区electron/electron on GitHub

    使用的语言

    • TypeScriptTypeScript 为 JavaScript 加入静态类型,在代码运行前发现错误,让大型代码库更易于维护。
    • JavaScriptJavaScript 是一门以 ECMAScript 为标准的动态编程语言,可在所有 Web 浏览器以及 Node.js 等运行时中运行。

    讨论

    发起讨论

    在这里提问、分享经验,交流关于 Electron 的看法。

    还没有讨论。来发起第一个吧。

    0 条评论

    热门评论最新优先

    登录 · 登录后即可发表评论。