下载镜像 docker pull q1194979849/alpinebuilder:v0.0.1 执行命令 docker run --rm -ti -v D:\path/for/project:/project -w /project q1194979849/alpinebuilder:tagname "/bin/sh" "-c" "cmd&&cmd" tagname: 版本号 "/bin/sh" "-c" "cmd&&cmd" : 向容器内部传递命令 实现命令自动化 命令映射目录 所以产物将在原项目
简介 Electron 是一款可以通过 Web前端技术 构建跨平台桌面应用的框架。 其原名为 Atom Shell, 是 Github 社区原本为 Atom 编辑器设计的一个跨平台应用外壳,它将 Chromium 和 Node.js 的事件循环整合在一起,并提供了一些与原生系统交互的 克隆官方的例子 $ git clone https://github.com/electron/electron-quick-start 2. 打包构建 Electron 打包的方式有很多种,常见的有 electron-builder、electron-packager 和 asar几种,在这里我使用的是 electron-packager 作为应用的打包工具 参考资料: Electron 官方文档 http://electron.atom.io/ 从 node-webkit 到 Electron 1.0 http://cheng.guru/blog/2016
我在2020年曾经基于Electron开发过一个跨平台桌面应用,在一定的条件下,Electron是非常好的选择。 本次,我与大家聊一聊,跨平台桌面开发,究竟是应该选Electron还是WebView2? 这是上篇。 但本系列还是专注于Electron以及WebView2这两个跨平台实现的一些对比。 基于Electron的。 2.Motrix 基于aria2的一个跨平台下载工具,有了它,你可能并不需要迅雷这么个玩意了。是的,它也是基于Electron开发的。 那WebView2究竟有什么优势,它做了什么改变,它会把Electron打败下去么?未来这些基于Electron开发的应用又会纷纷改变自己路线么?究竟桌面跨平台应用还有更具有性价比的选择么?
这一周继续聊跨平台桌面开发这个事情。 在这篇文章中,我暂时会放下Electron与WebView2的一个对比,而聊一聊跨平台这个对于程序员群体来说不陌生的词。 Native则是使用虚拟DOM以及转换成原生控件的方式来实现跨平台,而Electron则是通过性能较好的Chrome内核+NodeJS原生调用能力的搭配来实现跨平台桌面开发。 这个问题在跨平台桌面开发中也是类似,跨平台桌面开发技术也不是Electron最开始出现,比如著名的QT很早就有了,但比起Electron这种使用前端编程技术来说,显然在编程语言的门槛上和程序员群体上都存在困难 四)Electron VS WebView2 其实,无论是Electron,或是WebView2,都是基于浏览器内核+前端技术的跨平台桌面解决方案,这也是为什么要把它们放在一起聊的原因。 Electron是先行者(当然,严格说来,NW.js出现的更早,但今天它的流行度已远远落后于Electron了),而WebView2则是后来者。 那做为后来者的WebView2究竟做了哪些改进?
好了,前面两篇铺垫了一些内容,这周终于进行这个话题的核心内容了,就是对于跨平台桌面来说,Electron与WebView2这两个非常类似的技术方案究竟哪个更合适? 这是这个话题的最终篇,前两篇为: 1.跨平台桌面开发,Electron还是WebView2 (上篇)2.跨平台桌面开发,Electron还是WebView2 (中篇) 接下来,我会分别从这两个技术的相似之处以及不同之处来详细对比说明 都是跨平台的(未来) 好吧,Electron是跨平台的,基本上,只要支持Chrome浏览器+NodeJS语言的系统,那Electron做出来的应用都能正常运行。 WebView2由于机制和Electron非常类似,也可以跨平台。 但这是未来,因为当下的WebView2只支持Windows,但是微软承诺未来会支持MacOS和Linux。 那对于跨平台桌面开发,如果你想找到一个性价比非常之高的解决方案,是Electron还是WebView2,心中应该有自己的答案了吧。
本文基于技术推演与架构类比,探讨 若将 Electron 架构思想引入鸿蒙生态 所需的底层机制、可行性路径及潜在挑战,旨在为开发者提供跨平台融合的技术视角。 Electron 自 2013 年诞生以来,凭借 “HTML/CSS/JS + Chromium + Node.js” 的组合,成为桌面端跨平台开发的事实标准(VS Code、Slack、Discord JS 调用 */ }) 底层基于 Chromium M90+(经安全裁剪) 支持 DOM、CSS、Canvas、WebGL 限制:无法访问文件系统、网络等敏感 API(需通过 Bridge 代理) 2. 鸿蒙使用 ArkCompiler 编译 TS/JS 为机器码,不支持 CommonJS/ESM 动态 require 解决方案:预编译依赖,或使用 QuickJS 嵌入式引擎 运行部分 JS 逻辑 2. 结语 “Electron for HarmonyOS” 并非简单地将 Electron 移植到鸿蒙,而是一次 跨平台运行时思想的本地化重构。
开发和维护一个桌面应用是比较复杂的,所以可以理解现在的公司门为何推动WEB应用或者各种跨平台版本,在过去的十几年里,已经有了很多尝试,Flash、Air、Java和Sliverlight,他们都各自取得了不同程度的成功 我们都知道现在出现了一些使用JavaScript和web技术来开发跨平台的桌面应用的方案。 Electron, GitHub提供的一种方案,我已经尝试的构建了几个应用。 character_listdiv的每一个角色的HTML字符串方法: var characterHTML = (character)=> `
前言 此前有给大家分享一个vite2+vant3开发h5手机端小视频实例。今分享一个最新开发的electron跨端聊天应用。 p4.gif 框架技术 vue3全家桶:vue3.0+vuex4+vue-router@4 electron框架:electron11.2.3 打包工具:vue-cli-plugin-electron-builde /static/tray.ico') let trayIco2 = path.join(__dirname, '.. this.trayIco1 : this.trayIco2) hasIco = ! electron-builder打包配置 创建vue3项目的时候,根目录会有一个vue.config.js配置文件。可用来进行一些项目配置和electron打包配置。
首先介绍下electron,它是一个开源框架,可以跨平台构建桌面应用,结合chromium和nodejs,这样前端开发人员也可以开发web应用了,对前端人员非常之友好。 2、安全性隐患大,因为electron嵌入Chromium和nodejs运行环境,如果存在漏洞的话,这又与苹果安全性要求不符。 尽管如此,electron目前发展迅猛,前景良好,不但能在macos上用也能在windows和linux上使用,主要有以下优势,值得继续学习: 1、开发简单跨平台应用。 2.python2.7,因为一部分功能在编译的时候比较依赖python2.7,而3的版本有不兼容。 3. 2.使用make命令创建可分发的应用 npm run make > my-electron-app@1.0.0 make /my-electron-app > electron-forge make ✔
我们可以先看下官方文档:https://cn.vuejs.org/v2/guide/components-custom-events.html#sync-%E4%BF%AE%E9%A5%B0%E7%AC title: '文件名 2', time: '2020-06-21' }, { id: 3, title: '文件名 3', time: '2020-06-21' }, '文件名 6', time: '2020-06-21' }, { id: 1, title: '文件名 1', time: '2020-06-21' }, { id: 2, { id: 6, title: '文件名 6', time: '2020-06-21' } ], fileItem: { title: '手摸手Electron main-container { flex: 1; overflow: hidden; } } </style> 项目github地址:https://github.com/mengdebiao/vue-electron-notes
1 为什么要写这个系列教程 相信看到这篇文章的人,都是对Electron感兴趣的, 网上关于Electron的教程其实已经不少了,但是大多都是一些功能点的实现,对于从零开始搭建一个适合自己的项目,估计还是有不少人有点懵逼的 2 项目搭建 网上有个比较火的脚手架electron-vue,github 上 12.2k 的 star,大家应该都听说过或者使用过,但现在我们不使用它,electron-vue是vue-cli2.0的版本 ,现在都已经出道 4.0 了,再者electron-vue已经很久没有更新,我们可以使用 vue 最新的脚手架加上插件vue-cli-plugin-electron-builder来搭建项目,项目结构也更加清晰明了 App (PWA) Support ◉ Router ◉ Vuex ◉ CSS Pre-processors ❯◉ Linter / Formatter ◯ Unit Testing ◯ E2E 2.2 在项目内集成Electron 进入我们项目的根目录,我们执行以下命令来安装插件vue-cli-plugin-electron-builder vue add vue-cli-plugin-electron-builder
1 Electron升级 2020年5月19号,Electron更新了最新的 9.0.0 版本,带来了诸多改进,具体的我就不在此赘述了,大家可以看一下官方介绍:github.com/electron/el … 好了,我们现在就把上节课初始化好的项目升级到Electron9.0.0,只要简单升级 1、命令行直接执行重新安装yarn add electron即可升级到最新版本Electron 2 项目介绍 估计大家看到这里都已经忍不住了 {js,jsx,ts,tsx,vue}] indent_style = space indent_size = 2 end_of_line = lf trim_trailing_whitespace = 4.1 整体布局 我们先删除项目中的多余页面与组件: vue-electron-notes/src/components/HelloWorld.vue vue-electron-notes/src/ 项目github地址:https://github.com/mengdebiao/vue-electron-notes
for HarmonyOS 前言 在当今软件开发领域,“跨平台”早已不是一句口号,而是一种刚需。 今天,我们要认识两位“跨平台明星”——Electron 与 鸿蒙操作系统(HarmonyOS),并探讨它们各自如何利用 Web 技术实现多端适配,以及为何将二者结合值得深入探索。 它的“一次开发,多端部署”理念解析 如果说 Electron 解决了“桌面端跨平台”,那么华为推出的 鸿蒙操作系统(HarmonyOS) 则致力于解决 “全场景跨设备” 的难题。 鸿蒙正在逐步构建一个既兼容 Web 生态、又具备原生性能的新型应用平台。 更重要的是,这场探索不仅是技术适配,更是对“跨平台本质”的再思考:我们追求的不是“一套代码跑 everywhere”,而是“一套逻辑,多端最优呈现”。
1、引言 在当今快速发展的技术环境中,对跨平台桌面应用程序的需求正在不断激增。 3、初识框架 1)Electron: * 技术背景:Electron 由 GitHub 开发,因其使用 HTML、CSS 和 JavaScript 等 Web 技术构建跨平台桌面应用程序的能力而广受欢迎 它提供了一套用于构建跨平台桌面应用程序的全面工具,并强调本机外观和感觉。 4、跨平台能力 在跨平台功能方面,Electron、Flutter、Tauri 和 Qt 足以在多个操作系统上运行应用程序。 然而,它的跨平台支持可能不像其他框架那样无缝,并且可能需要额外的努力才能在所有平台上实现一致的性能和 UI。 5、性能表现 性能是桌面应用程序开发的关键因素。 以下是具体的场景举例: 1)Electron:广泛用于构建跨平台桌面应用程序,包括代码编辑器(VSCode)、通信工具(Slack)和娱乐应用程序(Spotify); 2)Flutter:Flutter
Note that 'connect-src' was not explicitly set, so 'default-src' is used as a fallback 这个错误信息表明,您的 Electron 内容安全策略是一种浏览器安全机制,用于防止各种类型的攻击(如跨站脚本攻击和数据注入攻击)。 要解决这个问题,您需要修改 Electron 应用的 CSP 配置,以允许从 http://127.0.0.1:8000 加载资源。 您可以按照以下步骤进行操作: 在主进程中设置 CSP: 在 Electron 的主进程(通常是 main.js 或 index.js 文件)中,使用 webContents 对象的 setContentSecurityPolicy 可以在创建 BrowserWindow 对象时,配置新的 CSP: const { app, BrowserWindow } = require('electron'); function
随着技术的发展,跨平台桌面应用的需求日益增长,PyQT作为一个强大的Python绑定库,使得开发者能够使用Python语言快速构建跨平台的桌面应用程序。 跨平台的桌面应用开发需要考虑不同操作系统之间的差异,并保证应用程序在这些平台上运行一致。 一、Electron技术简介Electron是由GitHub开发的一款开源框架,它允许开发者使用Web技术(如HTML、CSS和JavaScript)来构建跨平台的桌面应用程序。 安装 Node.js在开始使用 Electron 之前,需要先安装 Node.js。可以在 Node.js 官方网站上下载安装包,选择适合自己操作系统的版本进行安装。2. 三、如何通过Electron构建跨平台桌面应用安装Node.js和Electron:首先,你需要在你的计算机上安装Node.js和Electron。
最近一直学习electron25集成vite4.x技术开发跨端应用。就搭建了一个electron-chatgpt聊天EXE程序。 图片electron-vite4 for chatgpt 基于最新前端技术栈vite4+vue3+pinia2+vue-router+electron25跨端技术开发桌面端仿chatgpt聊天应用程序。 图片图片使用技术编码工具:vscode框架技术:electron25+vite4+vue3+pinia2组件库:veplus (基于vue3自定义组件库)打包工具:electron-builder^23.6.0 ^3.1.0electron结合vite插件:vite-plugin-electron^0.11.2图片项目结构图使用最新版electron跨端技术配合vite4.x全家桶技术,采用vue3 setup ${ext}" }}到这里,基于electron25+vue3开发跨端仿制chatgpt实例就先分享到这里,希望对大家有所帮助。
Tauri 的跨平台支持可能不如 Flutter 和 Electron 那么广泛。 Rust 语言上手难度还是比较大的,如果使用Tauri额外的增加了Rust语言的学习成本。 Tauri 在各平台上交互体验可能有较大差别,因为他基于平台自带的 WebView2 内核渲染,这就决定了不同平台可能会有较大差异。 不支持移动端,虽然说提出了开发计划,但是却迟迟没有发布。 三、Electron Electron 是一款基于 Chromium 和 Node.js 的桌面应用程序开发框架,可以使用 HTML、CSS 和 JavaScript 来构建跨平台的桌面应用程序。 Electron有如下的一些特点: Electron 提供了易于使用的方式来构建跨平台的桌面应用程序,可以使用常见的 Web 技术来构建应用程序。 Electron 的文档和社区支持非常丰富,可以快速解决问题。 Electron 的跨平台支持非常广泛,可以在 Windows、macOS 和 Linux 上运行,很遗憾也没有移动端。
从零入门到实战避坑:Electron跨平台开发深度解读 引言 在跨平台开发领域,Electron作为一款基于Web技术构建桌面应用的框架,凭借"一次开发,多端部署"的核心优势,成为众多开发者的首选工具。 本文将从技术小白视角出发,结合真实开发经验,全面解析Electron的原理、实践、优劣及未来趋势,助你快速掌握这一强大的跨平台利器。 一、认识Electron:用网页技术造桌面应用 Electron由GitHub于2013年推出,初衷是为 Atom 编辑器提供跨平台解决方案。 +GTK/Qt或Go+跨平台UI库。 从本文的实践指南到避坑经验,再到趋势展望,我们希望能助你快速掌握Electron的精髓,在跨平台开发的道路上少走弯路。
想要选择一个合适的技术来开发一个跨平台桌面的App, 你就需要知道Electron与Tauri各自的优缺点. Electron本质是利用Chrome V8内核, 因为Chrome V8内核a支持三大主流操作系统, 自然基于它的也就能轻松做到跨平台了. 除非对性能有较高的需求的应用以外, 选择跨平台的技术方案是最佳的. 但是Electron的缺点前面也说了, 比较明显, 最为关键的就是性能. 那自然会出现又跨平台, 又能提高性能的技术方案了. Electron主要是现代一些前端技术, 主要是是基于package.json这种模式开发的. V2开始支持移动端 Tauri的v2版本还在beta中, 但相对于V1来说, 它增加了对移动端的支持. 这意味着如果使用Tauri, 有时候找不到好的框架 最后 不介意性能和软件体积, 对跨平台桌面开发来说, 仍然是Electron更具性价比. 但如果你想找一个更轻, 更小, 体积更小的跨平台方案.