首页 > 其他分享 >go1.11 wasm helloworld

go1.11 wasm helloworld

时间:2022-11-22 12:03:51浏览次数:33  
标签:git helloworld go1.11 wasm result go js main


go 1.11 版本中已经支持了对go程编译出web可执行的wasm文件,向js的强悍地位提出了挑战。
试水:
1.新建main.go

package main
import (
"fmt"
)

func main() {
fmt.Println("hello,wasm")
}

2.交叉编译成web可执行的二进制文件
该文件路径下,右键-git bash here,须安装git for windows

GOOS=js GOARCH=wasm go build -o main.wasm
  1. 新建index.html,与main.go同级目录:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<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>
</head>
<body></body>
</html>

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<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>
</head>
<body></body>
</html>
  1. Go()这个对象位于wasm_exec.js, 这个文件位于 $GOROOT\misc\wasm
  2. 文件分布:
  3. go1.11  wasm helloworld_html

  4. git bash here,输入 node wasm_exec.js main.wasm
  5. go1.11  wasm helloworld_可执行_02


标签:git,helloworld,go1.11,wasm,result,go,js,main
From: https://blog.51cto.com/u_11553781/5877571

相关文章

  • HelloWorld,最简单的使用方式
    生产者packageorg.example.helloworld;importcom.rabbitmq.client.Channel;importcom.rabbitmq.client.Connection;importcom.rabbitmq.client.ConnectionFactory......
  • HelloWorld
             /*表示包括.jsp的所有请求。                        ......
  • 在 .NET 7上使用 WASM 和 WASI
    WebAssembly(WASM)和WebAssemblySystemInterface(WASI)为开发人员开辟了新的世界。.NET开发人员在BlazorWebAssembly发布时熟悉了WASM。BlazorWebAssembly在浏览器中基......
  • HelloWorld! 开启新世界的大门。
    HelloWorld新建一个文件夹,存放代码新建一个java文件文件名后缀为.javaHelloWorld.java编写代码publicclassHelloWorld{publicstaticvoidmain(String[]......
  • [FastAPI-01]HelloWorld
    1.环境搭建/root/.pyenv/versions/3.9.14/bin/python3.9-mpipinstall-ihttp://pypi.douban.com/simple/--trusted-hostpypi.douban.com--upgradepippipinstal......
  • django+命令行 Helloworld程序
    这里说一下如何使用命令行的方式来构建一个Helloworld项目。当然,python和django一定要先安装。这个在另一篇中有提到,就不细细说了。一切安装完毕之后,就可以新建工程了,选择一......
  • 试试将.NET7编译为WASM并在Docker上运行
    之前有听到说Docker支持Wasmtime了,刚好.NET7也支持WASM,就带大家来了解一下这个东西,顺便试试它怎么样。因为WASM(WebAssembly)一开始是一个给浏览器的技术,比起JS解释执行,W......
  • Day01-3 第一个程序:HelloWorld
    HelloWorld随便新建一个文件夹,存放代码新建一个Java文件文件后缀名为,javaHello.java【注意点】系统可能没有显示文件后缀名,我们需要手动打开编写代......
  • HelloWorld
    HelloWorld新建一个文件夹,存放Java代码;新建一个Java文件;文件后缀名为.javaHello.java【注意点】系统可能没有显示文件后缀名,我们需要手动打开编写代码......
  • 在 .NET 7上使用 WASM 和 WASI
    在.NET7上使用WASM和WASI WebAssembly(WASM)和WebAssemblySystemInterface(WASI)为开发人员开辟了新的世界。.NET开发人员在BlazorWebAssembly发布时熟悉了WA......