![](/img/trans.png)
[英]How do I access the File System API of emscripten when compiled with MODULARIZE option?
[英]Emscripten - How to override locateFile when compiled with MODULARIZE options
我使用 --preload-file 添加了一些文件到虚拟文件系统
我尝试使用以下方法更改数据文件位置:
MyModule['locateFile'] = function(path, prefix) {
if (path.endsWith(".data")) return "resources/" + path
return prefix + path
}
但是,如果我添加-s MODULARIZE=1 -s 'EXPORT_NAME="MyModule"'
,它就不起作用。
我尝试在此处解释的专用脚本中添加 locateFile function 。
我也尝试使用pre-js
和extern-pre-js
选项,但这也不起作用
我终于通过阅读常见问题解答和settings.js文件找到了解决方案,特别是:
工厂 function 接受 1 个参数,即 object 和模块实例的默认值:
const module = await EXPORT_NAME({ option: value, ... });
所以我们可以像这样传递 function:
function locateFile(path, prefix) {
if (path.endsWith(".data")) return "resources/" + path
return prefix + path
}
MyModule({'locateFile' : locateFile}).then(...)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.