github.com/vugu/vugu@v0.3.6-0.20240430171613-3f6f402e014b/tinygo-dev/testpgm.html (about)

     1  <html>
     2  <head>
     3  <script src="wasm_exec.js"></script>
     4  </head>
     5  <body>
     6  
     7  <div>testpgm...</div>
     8  
     9  <script>
    10  const go = new Go(); // Defined in wasm_exec.js
    11  const WASM_URL = 'testpgm.wasm';
    12  
    13  var wasm;
    14  
    15  if ('instantiateStreaming' in WebAssembly) {
    16  	WebAssembly.instantiateStreaming(fetch(WASM_URL), go.importObject).then(function (obj) {
    17  		wasm = obj.instance;
    18  		go.run(wasm);
    19  	})
    20  } else {
    21  	fetch(WASM_URL).then(resp =>
    22  		resp.arrayBuffer()
    23  	).then(bytes =>
    24  		WebAssembly.instantiate(bytes, go.importObject).then(function (obj) {
    25  			wasm = obj.instance;
    26  			go.run(wasm);
    27  		})
    28  	)
    29  }
    30  </script>
    31  
    32  </body>
    33  </html>