Проблема в том, что ваш .wasm
файл находится в шестнадцатеричном формате, а не в двоичном.
Возможно, вам следует проверить флаги компиляции, но вы также можете преобразовать его обратно из шестнадцатеричного с помощью чего-то вроде это или как это:
function fromHex(hexString) {
return new Uint8Array(hexString.match(/[0-9a-f]{2}/g).map(byte => parseInt(byte, 16)));
}
function instantiate(bytes, imports) {
return WebAssembly.compile(bytes).then(function(m) {
return new WebAssembly.Instance(m, imports)
});
}
fetch('simple.wasm').then(function(response) {
return response.text()
})
.then(function(text) {
const bytes = fromHex(text);
var importObject = {
imports: {
i: function(arg) {
console.log(arg)
}
}
};
return instantiate(bytes, importObject)
})
.then(function(instance) {
return instance.exports.e()
})