我使用emscripten编译了一个lib,生成了mylib.js。
基本上它的接口是在mylib.js的末尾声明的:
var MyLib = function () {
that = {};
that.ptr = MyLib_constructor();
that.destroy = function () {
MyLib_destructor(that.ptr);
};
that.doSomething = function () {
MyLib_doSomething(that.ptr);
};
return that;
};
我将它集成到这样的HTML页面中:
<html>
<head>
<script src="mylib.js"></script>
</head>
<body>
<script>
var MyLibInstance = MyLib();
/*...*/
</script>
</body>
</html>
然而,在控制台中,我收到了以下警告:
成功编译了asm.js代码(总编译时间为17ms;无法在同步脚本中缓存asm.js;尝试通过或者createElement加载asm.js(&#39;脚本&#39;))
1。这会影响性能吗?怎么样?
然后我尝试让脚本调用异步:
<script src="mylib.js" async=true></script>
然后它可以缓存:
成功编译了asm.js代码(在48ms内从缓存加载)
然后再找不到MyLib了:
ReferenceError:MyLib未定义[了解更多]
2。是否有关于如何使此代码异步并让我的脚本可以看到界面的示例?