是否可以main在 Javascript 中调用 Go WebAssembly 函数,而不是?
让我先展示一下我做了什么。我的 Go 函数定义如下:
package main
import "fmt"
func main() {
fmt.Println("it works!")
}
func add(a, b int) int {
return a + b
}
Run Code Online (Sandbox Code Playgroud)
我只能调用main函数:
const go = new Go();
const data = await fetch("http://localhost:3333/main.wasm");
const result = await WebAssembly.instantiateStreaming(data, go.importObject);
go.run(result.instance);
Run Code Online (Sandbox Code Playgroud)
它it works!按预期返回。
然而,每当我试图调用add函数,我收到TypeError: Cannot read property 'add' of undefined at Welcome.getWasm,因为这两个result.exports,result.instance.exports不包含我的功能。我也尝试将 Go 函数大写,但无济于事。
因此,我开始想知道什么是问题——甚至可以从 Javascript 中调用一个随机的 Go …