看到本站有不少用wails做的工具,想问问 wails 相比 electron 优缺点有哪些呢(比如稳定性、开发上手难度、安全等方面)?
假如说有一个 vue 的 web 端网站,现在要增加桌面端,这两种工具哪个会更方便迁移呢?
我用wails 构建一个应用发现它需要等前端build ,而且似乎没有热更新,不知道是不是没用对。大伙有没有用过的
1
iamzuoxinyu 2022-05-27 11:13:46 +08:00 via Android
还真有人拿 go 写桌面客户端啊…
|
2
star7th 2022-05-27 11:19:04 +08:00
如果你是新人,那么用 electron
如果你是前端开发者,那么用 electron 只有 go 开发者才有必要用 wails , 不是 go 开发者就不用考虑了。 |
3
star7th 2022-05-27 11:23:00 +08:00 1
electron 配套的生态完善一些,以后可能想做什么都容易搜索到解决方案。比如打包,升级什么的。
electron 的缺点也是明显的,安装必体积大,性能没那么高。但在带宽和电脑性能都蛮高的今天,其实这也不算非常大的问题。你自己根据自己的场景考虑,如果自己的产品非常难容忍这么大的体积和性能,就别用 electron 了 |
4
EyebrowsWhite OP @iamzuoxinyu #1 据我初步了解的 wails 其实用的还是前端 vue 、react 之类的写界面,只是能和 go 更好的配合
|
7
EyebrowsWhite OP @star7th #3 这么看来的话,wails 除了体积和性能之外似乎没有很明显的优势,那 wails 相比 electron 能有多大的性能(体积)优势呢?
|
8
EyebrowsWhite OP @star7th wails 用的是 safari 的内核吧
|
9
iamzuoxinyu 2022-05-27 11:33:53 +08:00
@EyebrowsWhite 嗯,看起来跟 rust 这边的 tauri 差不多。我主要吐槽的是 FFI 上,因为有两套 GC 两套 runtime ,js 和 go 交互起来会有扯不清的问题。
|
10
murmur 2022-05-27 11:40:13 +08:00
@EyebrowsWhite 那就是不兼容 windows 呗。。。
|
11
ysc3839 2022-05-27 11:46:19 +08:00 via Android
感觉和 tauri 差不多,主要问题都是后端要用另一种语言写,不是 Node.js ,这样对曾经从事前端的开发者不友好。
个人认为现在有必要搞个 Node.js+系统自带 WebView 的方案,这样可以解决 Electron 体积大的问题(Linux 下解决不了,因为系统没 WebView)。不过似乎一直没人搞,可能是大多数人其实不在乎体积问题。 |
12
murmur 2022-05-27 11:48:27 +08:00
|
13
qq1340691923 2022-05-27 11:56:14 +08:00
好东西,后续可以把我的 esview 重写成桌面端了 https://github.com/1340691923/ElasticView
|
14
kytrun 2022-05-27 11:57:41 +08:00
|
16
iamzuoxinyu 2022-05-27 12:57:24 +08:00
@iamzuoxinyu 而且涉及到一些原生操作,go 还是要跟 c 打交道,go 跟 c 的交互远远比不上 node/rust 。别的不说,光 windows 上的 cgo 就够你喝一壶的。
|
17
yanjieee 2022-05-27 13:02:44 +08:00
在 python 上面搭配 pywebio 可以让不懂前端的人员写出一个简单交互的程序,不知道 go 有没有类似的方案?
|
18
wangtian2020 2022-05-27 13:26:55 +08:00
现代前端基本都会 nodejs 能写 electron
wails 的最大缺点就是我不会 go |
19
EyebrowsWhite OP @murmur 兼容 win10/win11 ,他使用的原生的,所以我在 mac 打开以为是 safari
|
20
zachgenius 2022-05-27 14:21:02 +08:00
不知道有没有人用过 Tauri
|
21
a1114262301 2022-05-27 18:01:21 +08:00
@EyebrowsWhite webview2
|
22
evilStart 2022-05-27 18:05:23 +08:00 via Android
@ysc3839 你在搞笑吗? WebView 不就又回到前端老生常谈的兼容性问题了? electron 就是可以避免这种问题
|
23
ysc3839 2022-05-27 18:43:26 +08:00
@evilStart 不是我在搞笑,说 Electron 体积大的人不是我,我只是转述一下某些人的需求而已,我自己觉得 Electron 体积大无所谓
|
24
Buges 2022-05-27 19:58:31 +08:00 via Android
@ysc3839 taur i+ deno binding 符合你的描述。
但无法达到 electron/nwjs 的那种十分方便 context integration 效果,即网页里的 js 脚本随意调用 node api 。 |
25
hervey0424 2022-05-28 14:32:45 +08:00
首选 Electron , 如果不行直接用 winform 更好
|
26
00ing 2022-05-29 10:34:14 +08:00
go 用 govcl
|
27
sunmoon1983 2023-12-08 13:11:32 +08:00
|
28
sunmoon1983 2023-12-08 13:12:02 +08:00
@star7th 我前端和 go 都会,要怎么选?不知道 wails 坑多不多
|
29
star7th 2023-12-11 13:36:03 +08:00
|