vue+electron开发————创建electron应用

electron核心内容

  • 架构:Electron使用Chromium作为其渲染引擎,这使得开发者可以使用HTML、CSS和JavaScript编写应用程序的用户界面。它还使用Node.js作为后端运行环境,以便访问操作系统的底层功能。

  • 跨平台:Electron允许开发者使用相同的代码库构建适用于多个操作系统(如Windows、macOS和Linux)的应用程序。这意味着您可以在不同的平台上开发一次,并且应用程序在各个平台上具有相同的外观和功能。

  • 扩展性:Electron支持使用第三方模块和库来扩展应用程序的功能。通过使用npm(Node.js的包管理器),开发者可以轻松地集成各种功能,例如文件系统访问、数据库连接、网络请求等。

  • 丰富的生态系统:Electron拥有庞大的开发者社区,并且有许多现成的插件和工具可供使用。这些插件和工具可以帮助您快速构建功能强大的应用程序,并解决常见的开发需求。

  • 著名应用程序:许多知名的应用程序使用Electron作为其核心框架,包括Visual Studio Code、Atom、Slack、GitHub Desktop等。这些应用程序的成功证明了Electron在构建高质量桌面应用程序方面的能力。

创建一个electron项目

新建一个文件夹electron-project,输入以下命令创建

npm init

一直回车我们会得到以下package.json文件

bash 复制代码
{
  "name": "electron-project",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo "Error: no test specified" && exit 1"
  },
  "author": "",
  "license": "ISC"
}

安装electron(推荐使用yarn,后期会讲为什么)

yarn add --dev electron

安装完成后 package.json script下增加启动命令

json 复制代码
"start": "electron .",

创建main.js 作为入口文件

scss 复制代码
const { app, BrowserWindow } = require('electron')
// 创建一个桌面应用窗口
const createWindow = async () => {
    const win = new BrowserWindow({
        width: 800,
        height: 600
    })

    await win.loadFile('index.html') //加载首页的文件
    //打开开发者工具
    await win.webContents.openDevTools();
}
//在 Electron 中,只有在 app 模块的 ready 事件被激发后才能创建浏览器窗口。 您可以通过使用 app.whenReady() API来监听此事件。 在whenReady()成功后调用
app.whenReady().then(() => {
    createWindow()

    app.on('activate', () => {
        if (BrowserWindow.getAllWindows().length === 0) createWindow()
    })
})

// 在Windows和Linux上,关闭所有窗口通常会完全退出一个应用程序。为了实现这一点,你需要监听 app 模块的 'window-all-closed' 事件 点击关闭完全退出
app.on('window-all-closed', () => {
    if (process.platform !== 'darwin') app.quit()
})

然后创建一个入口主页面index.html

xml 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>第一个electron应用</title>
</head>
<body>
    <div>hello,word</div>
</body>
</html>

修改package.json 主入口

npm run start

启动获得以上一个窗口应用

以上就是创建一个简单electron应用的方法,完结撒花

下章讲解vue+electron 项目创建到开发最方便的方式

相关推荐
知了学历孙老师3 小时前
小自考的校考和统考,出题方和难度差在哪
java·大数据·前端
ShineWinsu5 小时前
对于JavaScript:操作元素的解析
开发语言·前端·javascript·面试·web·dom·元素
福兮说5 小时前
JSON 格式正确,数据就可靠吗?我用一份自编配置检查类型与空值
java·前端·json
程序员老赵7 小时前
Docker 部署青龙面板:轻松搭建定时任务管理平台
前端·docker·开源
Swot7 小时前
Asciidoctor 公式数字下标错位问题:原因分析与解决方案
前端
Swot7 小时前
leo-editor 中将 Markdown 内容转成 asciidoc 格式
前端
狒狒AI7 小时前
Remotion / GSAP+Three / HyperFrames / Skia 四栈实测:代码渲染知识视频的选栈方法(附开源技能)
前端·人工智能·aigc
修炼的dance7 小时前
浏览器里导出H.265,8.5秒和55.5秒差在硬件
前端
补码缩写7 小时前
WebCodecs选编码器,探测之后还要验解码和播放
前端
大文说跨境7 小时前
亚马逊多账号管理浏览器怎么选?云登/紫鸟/AdsPower 对比
java·前端·自动化