我是堆栈溢出和golang网络组装的新手
我正在为这个问题而苦恼:我写了一个测试代码
main.go
package main
func main(){
println("hello world")
}
我已经生成了main.wasm并将wasm_exec.js和wasm_exec.html导入到工作目录中
我还写一个网络服务器
package main
import (
"flag"
"log"
"net/http"
)
var (
listen = flag.String("listen", ":8080", "listen address")
dir = flag.String("dir", ".", "directory to serve")
)
func main() {
flag.Parse()
log.Printf("listening on %q...", *listen)
err := http.ListenAndServe(*listen, http.FileServer(http.Dir(*dir)))
log.Fatalln(err)
}
我使用铬并输入 http://localhost:8080/wasm_exec.html
根据网上的资料,有一个"运行"按钮可以点击。
但是,实际上我无法单击此按钮
我对此感到非常困惑
这是我关于堆栈溢出的第一个问题。
对不起,英语不好
从Go WebAssembly
逐步Hello World
:web/main.go
文件:
package main
import (
"log"
"net/http"
)
func main() {
http.Handle("/", http.FileServer(http.Dir(".")))
err := http.ListenAndServe(":8080", nil)
if err != nil {
log.Fatal("ListenAndServe: ", err)
}
}
main.go
文件:
package main
import "fmt"
func main() {
fmt.Println("Hello World")
}
在 Linux 终端中运行以下命令(对于 Windows 操作系统,将cp
替换为copy
,将$GOROOT
替换为%GOROOT%
(:
GOOS=js GOARCH=wasm go build -o test.wasm
cp $GOROOT/misc/wasm/wasm_exec.html ./
cp $GOROOT/misc/wasm/wasm_exec.js ./
go run web/main.go
开放式http://127.0.0.1:8080/wasm_exec.html
现在在浏览器中右键单击浏览器内部,然后选择Inspect
然后选择Console
选项卡,现在是时候单击Run
按钮了,然后您将在浏览器控制台中看到Hello World
。