Electron 简介

Electron 简介

Electron 是一款框架,借助它,开发者能够运用 JavaScript、HTML 和 CSS 构建桌面应用程序。它把 Chromium 和 Node.js 嵌入二进制文件,让开发者仅维护一个 JavaScript 代码库,就能创建出可在 Windows、macOS 以及 Linux 系统上运行的跨平台应用,而且无需具备原生开发经验。

入门

建议新手从 tutorial 入手,它会引导你完成开发一个 Electron 应用程序并将其分发给用户的全过程。示例API 文档同样是值得探索、挖掘新知识的绝佳去处。

使用 Electron Fiddle 运行示例程序

Electron Fiddle 是一款基于 Electron 编写的沙盒应用程序,由 Electron 的维护团队提供支持。强烈推荐将其作为一款学习工具进行安装,以便在开发过程中对 Electron 的 API 进行测试,或者开发原型系统。

Fiddle 还与文档实现了深度集成。在浏览教程示例时,常常会在代码块下方看到一个 “Open in Electron Fiddle” 的按钮。要是安装了 Fiddle,点击这个按钮就会打开一个指向 fiddle.electronjs.org 的链接,它会自动将示例加载到 Fiddle 中,无需手动复制粘贴。

快速开始示例代码

  • main.js
const { app, BrowserWindow } = require('electron/main')
const path = require('node:path')

function createWindow () {
  const win = new BrowserWindow({
    width: 800,
    height: 600,
    webPreferences: {
      preload: path.join(__dirname, 'preload.js')
    }
  })

  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()
  }
})
  • preload.js
window.addEventListener('DOMContentLoaded', () => {
  const replaceText = (selector, text) => {
    const element = document.getElementById(selector)
    if (element) element.innerText = text
  }

  for (const type of ['chrome', 'node', 'electron']) {
    replaceText(`${type}-version`, process.versions[type])
  }
})
  • index.html
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Hello World!</title>
    <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline';" />
</head>
<body>
    <h1>Hello World!</h1>
    <p>
        We are using Node.js <span id="node-version"></span>,
        Chromium <span id="chrome-version"></span>,
        and Electron <span id="electron-version"></span>.
    </p>
</body>
</html>

Electron 文档中包涵哪些内容

所有的官方文档涵盖如下内容:

  • Tutorial: 这是一份端到端指南,讲解如何创建并发布首个 Electron 应用程序。
  • Processes in Electron: 对 Electron 进程进行深入解析,并介绍如何与之协同工作。
  • Best Practices: 一份重要的检查清单,在开发 Electron 应用程序时需时刻牢记。
  • Examples: 为 Electron 应用程序添加功能的快速参考资料。
  • Development: 包含各类开发指南。
  • Distribution: 学习如何将应用程序交付给终端用户。
  • Testing And Debugging: 介绍如何调试 JavaScript、编写测试,以及用于打造高质量 Electron 应用程序的其他工具。
  • References: 提供有用链接,有助于更透彻地理解 Electron 项目的运作及组织方式。
  • Contributing: 编译 Electron 和做出贡献的过程可能颇具挑战,此部分旨在降低难度 。

如何获取更多的帮助

是否在任何地方遇到困难了呢?这里有一些可查找的链接:

  • 倘若在开发应用程序时需要帮助,社区 Discord 服务器向其他 Electron 应用程序开发者获取建议的理想之地。
  • 要是怀疑在使用 electron 包时遇到错误,请查看 GitHub 问题跟踪器,看看是否有与你遇到的问题相匹配的现有问题。若没有,可随时填写我们的错误报告模板并提交新问题。

链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值