我正在尝试将简单的碰撞检测库从 JavaScript 移植到 WebAssembly 以提高速度。在查找了编译为 WASM 的语言之后,AssemblyScript 似乎很完美,因为我只需要向 JS 文件添加类型。整个库是 a Class,添加类型后我尝试编译它,但它无法正确编译。例如,使用命令编译npx asc path/to/main.ts -o wasm.wasm --exportRuntime -t wasm.wat --bindings esm:
export class Test {
constructor() {
console.log('Successful!');
}
};
Run Code Online (Sandbox Code Playgroud)
结果出现了这个错误:
WARNING AS235: Only variables, functions and enums become WebAssembly module exports.
export class Test {
~~~~
in main.ts(1,14)
Run Code Online (Sandbox Code Playgroud)
看到错误后,我尝试通过执行以下操作来修复它:
WARNING AS235: Only variables, functions and enums become WebAssembly module exports.
export class Test {
~~~~
in main.ts(1,14)
Run Code Online (Sandbox Code Playgroud)
但这导致了另一个错误:
ERROR AS234: Expression does not compile to a …Run Code Online (Sandbox Code Playgroud)