如果您使用 AssemblyScript 编写 WebAssembly 模块并遇到函数没有被调用的问题,可以检查以下几点来解决问题:
// AssemblyScript 代码 export function add(a: i32, b: i32): i32 { return a + b; }
// JavaScript 代码 const imports = { env: { add: (a: number, b: number) => console.log(add(a, b)) } };
WebAssembly.instantiateStreaming(fetch('module.wasm'), imports) .then(module => { const { add } = module.instance.exports; add(2, 3); }); 在上述示例中,AssemblyScript 中的'add”函数已导出,并通过 JavaScript 中的'import”对象导入。在 JavaScript 中,我们'add”函数作为参数传递给一个名为'env”的对象。我们创建了一个包含'add”函数的模块实例,并将其存储在名为'module”的常量中。最后,我们调用 WebAssembly 模块中的'add”函数来计算 2 + 3。