yoo*_*nes 3 javascript parameters webassembly
Uncaught (in promise) TypeError: second argument must be an object当我运行以下代码时出现错误:
async function loadWasm(url) {
const fetchPromise = fetch(url)
const { module, instance } = await WebAssembly.instantiateStreaming(fetchPromise)
// [...]
}
loadWasm('http://localhost:3000/path/to/file.wasm')
Run Code Online (Sandbox Code Playgroud)
查看文档,它说WebAssembly.instantiateStreaming( importObject) 的第二个参数是可选的,所以我不明白为什么浏览器仍然强制它?
我已经在 Firefox 78.7.0esr(64 位)和 Chrome 88.0.4324.96(官方版本)(64 位)中对此进行了测试。如果它很重要,代码会在 ruby on Rails 6.1 应用程序中使用 webpack 5 进行转译。
更新:
我在 mdn 的 github 存储库上提出了一个问题,认为文档可能需要更新。到目前为止,文档似乎很好,所以这可能是一个实现问题。有待证实。
更新:
这既不是实施问题,也不是文档错误。我在下面的答案中发表了关于这个问题的结论。
https://github.com/WebAssembly/spec/issues/1284#issuecomment-772286062
仅当您实例化的模块实际导入某些内容时才需要它。
它在文档中被标记为可选,因为它并不总是需要的,而不是因为我们可以选择提供或不提供它。wasm 包决定了它是可选的还是必需的。
| 归档时间: |
|
| 查看次数: |
1433 次 |
| 最近记录: |