在HTML文件中调用WebAssembly API非常有效,
<html>
<body>
<script>
...
WebAssembly.instantiate(bytes, importObject)
...
</script>
</body>
</html>
但是,在我的react-app的根目录下运行'npm start'时,在React组件中调用它会导致此错误:
'WebAssembly' is not defined no-undef
import React from 'react';
export default class WasmContainer extends React.Component {
constructor(props) {
super(props);
this.func = this.func.bind(this);
}
func(){
...
WebAssembly.instantiate(bytes, importObject)
...
return "...";
}
render() {
return (<p>{this.func()}</p>)
}
}
我想从React组件运行.wasm
文件,这阻止了我。
如何解决这个问题?
答案 0 :(得分:2)
这看起来非常像一个linting错误。你在使用ESLint吗?
您需要通知您的linter WebAssembly是一个全局对象。尝试将以下内容添加到文件顶部:
/* global WebAssembly */
虽然更好的选择可能是将其添加到你的eslint confit文件中。