![](/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.