之前还在做嵌入式的时候就用Qt做过客户端应用,但是转Go后,一直还没写过客户端,前面也用过Amis这类前端低代码,写过Web界面,算起来也是非常方便的,适合不想理会前端的各类知识。

但是有些场景,用户就是需要桌面客户端这样的形式的时候,就没办法说用B/S这样的架构交付了。

Go的GUI库,比较火的有两个,FyneWails。经过一段时间的使用,这里推荐使用Wails

需要说明的是,当前Wails仅支持桌面端,不像Fyne是同时支持桌面、移动设备的。

组件

Wails官网

使用Wails,就能利用起前端的各类资源,这里推荐一个前端库quasarquasar库比较有那种桌面客户端的风格,不会像写element-plus一样,看起来跟Web页面一样。

使用

因为我们需要的页面不会是那种非常复杂的页面,所以只需要些许JS和CSS基础即可,更何况当前使用时,可以随时借助各类AI工具,所以当前使用难度几乎是被降的很低的。

我在使用时,只做一些单页面,对前端知识要求基本查quasar的文档,都有解决的方案(前端框架真的很卷)。

我使用的模板:https://github.com/sgosiaco/wails-template-quasar-js

这是使用wails实现的一个应用。

打印页面