gopherjs/gopherjs
11.2K
优点
- 一次编译在所有平台架构都可以运行
- 可以直接把 golang 代码编译为 javascript
- 可以作为 nodejs 和 chromejs 运行
- 支持几乎所有东西,包括 Goroutines兼容性文档
- 大多数情况下性能相当不错,参阅HTML5 游戏引擎基准
缺点
- 不能使用 sys|net 等核心组件,但是最新版本似乎通过 websocket 解决了这个问题
- 不支持 Cgo
#没有CGO调用的情况下,交叉编译
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
# -s -w 去掉调试信息,可以减小构建后文件体积
# --extldflags "-static -fpic" 完全静态编译[2],这样编译生成的文件就可以任意放到指定平台下运行,而不需要运行环境配置。
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags '-s -w --extldflags "-static -fpic"' main.go
vugu/vugu
4.4K 快速开始
优点
- 直接使用 golang 编写 webUI 以 WebAssembly 为目标
- 没有 node,npm,node_modules
缺点
- 最后一次版本更新是在 2020-11-08
hexops/vecty
2.4K