WebAssembly 导出的函数怎么在 JS 里调用?
我用 Rust 编译了一个 .wasm 文件,里面导出了一个叫 add 的函数,但在 JS 里加载后怎么都调用不了。我试过 instance.exports.add,但报错说不是函数。
我的 JS 加载代码是这样的:
WebAssembly.instantiateStreaming(fetch('pkg/add.wasm'))
.then(result => {
const add = result.instance.exports.add;
console.log(add(1, 2)); // 这里直接报错
});
是不是我漏了什么步骤?Rust 那边用了 #[no_mangle] 和 pub extern "C",应该没问题吧?
或者Rust那边加个 #[export_name = "add"] 覆盖导出名。