Closed4
Next.js Go Wasm
GoでコンパイルされたWebAssenblyをNextで動かす時のメモ
環境はNext13 appDir
は利用していません
wasm_exec.js
を読み込む
wasm_exec.js
はpublic
配下に置いています
個人的に<NextScript />
の上に置いた方がscriptが並んで気持ちいいです
_document.tsx
import Script from 'next/script'
<Script strategy='beforeInteractive' src='wasm_exec.js' />
ref
asyncWebAssembly
を加える
webpackのnext.config.js
const nextConfig = {
webpack: (config) => ({
...config,
experiments: {
asyncWebAssembly: true,
},
}),
}
module.exports = nextConfig
ref
実行!
main.wasm
はpublic
配下に置いています
WebAssembly.instantiateStreaming(fetch('main.wasm'), go.importObject).then(
(res) => go.run(res.instance),
)
(CLI上のgo run XXXX.go
と同じです)
あっという間でしたね😸
このスクラップは2023/03/23にクローズされました