本文已参与「新人创作礼」活动,一起开启掘金创作之路。
go wasm 入门demo
1.编写go代码
1.1初始化项目
mkdir wasm
go mod init wasm
新建一个 main.go 文件,内容如下
// main.go
package main
import "syscall/js"
func main() {
alert := js.Global().Get("alert")
alert.Invoke("Hello World!")
}
2.在windows 下 go1.18.1 编译
set GOOS=js
set GOARCH=wasm
go build -o static/main.wasm
3.发布运行
3.1 在static 目录下创建一个 index.html
<html>
<script src="wasm_exec.js"></script>
<script>
const go = new Go();
WebAssembly.instantiateStreaming(fetch("main.wasm"), go.importObject)
.then((result) => go.run(result.instance));
</script>
</html>
3.2 把 go 安装目录下的 wasm_exec.js 拷贝到staitc 下
整个static 目录下文件列表如下
3.3 把static 目录拷贝到 nginx 下
并且修改 nginx-1.8.1\conf\mime.types
添加以下内容
3.4 访问
http://localhost/static/index.html