Go to javascript

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