其他笔记 - Electron代替品探索过程

前言

Electron是基于 Node.jsChromium的,可以把前端代码打包成桌面应用的工具,使得JavaScript, HTML和CSS跨平台部署。
但是由于各种原因,不够精巧,体积太大,资源独占,发布不便,源码保护做的不好等等,所以不适用于某些场合。
最近要做嵌入式上位机开发,于是挨个测试一下。

替代品一览

发现 electron其实有超多替代品的,来源参考Electron替代一览

C# (.Net)

名称备注
Orleans分布式,云服务可用于物联网,更新不算勤
Avalonia更多功能需要付费
Uno(Pixel-Perfect Multi-Platform Applications with C# and WinUI)
Chromely(Build HTML Desktop Apps on .NET/.NET Core/.NET 5 using native GUI, HTML5, JavaScript, CSS)

C++

名称备注
Qt**
wxWidgets**
sciter可用于嵌入式
Ultralight语言接口丰富,轻量,但不知道对嵌入式的支持如何(9-15MB)

Dart

名称备注
flutter移动应用开发,暂不考虑

Go

名称备注
lorca5-10MB
wailsVue、Vuetify、React 前端支持,绑定简单
muon轻量、运行时占用低

Java

名称备注
Swing
JavaFX

JS

名称备注
NW.js(Similar to electron, provides Source code protection)
DeskGap(bundles a Node.js runtime and leaves the HTML rendering to the operating system‘s webview)
Neutralinojs(chromium module is replaced with either user’s web browser or built-in browser component. Node run-time is replaced with a lightweight web server which exposes native OS functionality)
Proton Native(does the same to desktop that React Native did to mobile, based on https://github.com/parro-it/libui-node)
React Native Desktop(Cross-platform React Native Desktop port based on Qt framework)
Vuido(creating native desktop applications based on Vue.js, based on https://github.com/parro-it/libui-node)
NodeGui(powered by Qt5, [NodeGui-React]
reactxp(library for cross-platform app development using React and React Native)
quasar(Vue.js based framework, which lets web developer to quickly create responsive websites/apps)
nidium
electrino
graffiti
Tauri
Sciter.JS(Is a 5MB HTML/CSS/JS (ES6) runtime aimed as a direct Electron replacement)

Python

名称备注
PyQt
Kivy支持嵌入式
PyGUI
wxPython
Tkinter
pywebview

其他的就暂且不说了。

sciter测试


官网下载sciterJS的sdk,阅读doc目录下的文档。
文档不支持中文,开发需要对照他的文档来写。
不保护源码,支持C API,所以在跨平台环境下效果不错。
使用的quickJS作为引擎,轻量。
官方给的例子是windows平台的。linux下13~19MB。

"bin/windows/x32/scapp.exe" "samples/calc/index.html"

如要使用,最好后台用c开发。
看了一下对React是可以支持的。
在这里插入图片描述

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
当需要更新 Vue-Electron 中的 Electron 版本时,我们需要按照以下步骤进行操作。 首先,我们需要确定 Electron 的新版本。我们可以通过查看 Electron 的官方网站(https://www.electronjs.org/)或 GitHub 仓库来获取最新的版本号。 一旦确定了新版本号,我们需要在项目的 package.json 文件中更新 `electron` 的依赖项。找到 `dependencies` 或者 `devDependencies` 部分,并将其对应的依赖项从旧版本更新到新版本。例如,将 `"electron": "^7.0.0"` 更新为 `"electron": "^8.0.0"`。 接下来,运行 `npm install` 命令来安装最新版本的 Electron。这将会自动下载并安装新版本的 Electron。 完成安装后,我们需要确保 Vue-Electron 的一些关键配置也进行了更新。如果在项目中使用了 Vue 的 webpack 模板生成的默认配置,我们需要修改 `build/webpack.base.conf.js` 文件。找到 `externals` 部分,并将 `'electron'` 的值更新为新版本号。例如:`'electron': '@latest'`。 如果项目中使用了 VueCLI 3.x,我们需要在 vue.config.js 文件中进行类似的操作。找到 `configureWebpack` 选项,并将 `externals` 部分的依赖项更新为新版本。 在确保所有必要的更新已经完成后,我们可以重新构建和运行项目,以确保新版本的 Electron 正常工作。可以使用命令 `npm run build` 重新构建项目,并使用 `npm run electron` 或相应的启动命令来启动 Electron。 通过以上步骤,我们可以成功更新 Vue-Electron 中的 Electron 版本,确保项目正常运行并享受最新的 Electron 特性和改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

canmoumou

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值