[完结13章]Electron+Vue3+AI+云存储--实战跨平台桌面应用

okkaandw · · 128 次点击 · 开始浏览    置顶

一、Electron是什么?(/s/1mxZTafAqSNRV1MoaLUnr6w 提取码:iyny ) Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Linux——不需要本地开发 经验。 二、Electron Fiddle 运行实例 Electron Fiddle 是由 Electron 开发并由其维护者支持的沙盒程序。 我们强烈建议将其作为一个学习工具来安装,以便在开发过程中对Electron的api进行实验或对特性进行原型化。 Fiddle 已经完美的集成到我们的帮助文档之中。 当你浏览我们教程中的例子,你会发现有个「Open In Electron Fiddle」按钮在代码示例中。 如果你已经安装了 Fiddle,「Open In Electron Fiddle」按钮会打开一个 fiddle.electronjs.org 链接并加载示例。 fiddle docs/latest/fiddles/quick-start 三、发展历史 2013年4月 Atom Shell 项目启动 。(Electron于2013年作为构建 Github上可编程的文本编辑器Atom的框架而被开发出来。) 2014年5月 Atom Shell 被开源 。 2015年4月 Atom Shell 被重命名为 Electron 。 2016年5月 Electron 发布了 v1.0.0 版本 。 2016年5月 Electron 构建的应用程序可上架 Mac App Store 。 2016年8月 Windows Store 支持 Electron 构建的应用程序 四、electron优缺点 优点: 原生的接口(菜单、消息提醒、系统托盘等) 上手难度低。能够使用react、vue等前端框架,能方便地迁移前端组件,构建出漂亮的桌面应用 方便热更新 调试和测试方便 Electron 开发文档齐全 缺点: 因为Electron捆绑了浏览器chromium内核和Node.js,所以它更倾向于创建大型应用,一个简单的Electron应用程序在没有压缩的情况下通常体积约120MB,不太适合开发轻量级的应用 相比c++开发的桌面应用,性能不如后者 每个窗口都是一个新的进程,占据大量内存 启动速度较慢 Electron允许用户通过开发者工具和ASAR源文件轻松访问源代码,不太安全 不支持手机端 五、环境搭建 Node 安装 (我的版本14.15.0) 项目初始化 npm init -y // 安装Electron npm i --save-dev electron // 创建main.js 并在package.json中设置为入口 "main":"main.js" // 创建index.html 用来书写页面内容 初始化代码 package.json { "name": "myElectron", "version": "1.0.0", "description": "", "main": "main.js", "scripts": { "start": "nodemon --watch main.js --exec npm run build", "build": "electron ." }, "keywords": [], "author": "", "license": "ISC", "devDependencies": { "electron": "^24.4.0" }, "dependencies": { "@electron/remote": "^2.0.9" } } 六、测试流程记录 第一步、准备工作 克隆 vue3 Demo 项目到本地 环信 vue3-demo 源码地址 在编辑器内打开此项目并执行yarn install安装项目相关 npm 依赖。 在此项目目录下打开终端请敲下yarn add electron,从而在该项目中安装 electron。 安装一些依赖工具wait-on以及cross-env wait-on 是一个 Node.js 包,它可以用于等待多个指定的资源(如 HTTP 资源、TCP 端口或文件)变得可用。它通常用于等待应用程序的依赖项准备好后再启动应用程序。例如,您可以使用 wait-on 等待数据库连接、消息队列和其他服务就绪后再启动您的应用程序。这样可以确保您的应用程序在尝试使用这些资源之前不会崩溃。 cross-env 是一个 npm 包,它的作用是在不同平台上设置环境变量。在不同操作系统中,设置环境变量的方式是不同的。例如,在 Windows 中使用命令 set NODE_ENV=production 设置环境变量,而在 Unix/Linux/Mac 上则需要使用 export NODE_ENV=production 命令。 第二步、项目目录增加 electron 文件 在项目增加 electron 文件时我们需要扩展一部分知识从而了解为什么创建创建这个目录,并在该目录下增加main.js文件的作用。当然如果觉得不需要可以直接略过。 主进程与渲染进程的概念 在 Electron 中,主进程和渲染进程是两个不同的概念。主进程是 Electron 应用程序的核心,它运行在一个 Node.js 实例中,并管理应用程序的生命周期、窗口创建和销毁、与底层操作系统进行交互等。主进程还可以通过 IPC(进程间通信)机制与渲染进程进行通信。 渲染进程则是应用程序的 UI 界面所在的进程。每个 Electron 窗口都有其自己的渲染进程。渲染进程是一个 Chromium 渲染引擎实例,它运行在一个仅包含 Web API 的环境中。渲染进程负责渲染 HTML、CSS 和 JavaScript,并处理来自用户的输入事件,同时通过 IPC 机制与主进程进行通信。 由于渲染进程只能访问 Web API 而不能直接访问 Node.js API,因此如果需要在渲染进程中使用 Node.js API,就需要通过 IPC 机制向主进程发出请求,由主进程代为执行并将结果返回给渲染进程。

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

128 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传