我目前正在使用 Emscripten 将一个基本的 C 函数编译成 JavaScript,以便在 React Native 项目中使用。但是,当我Module
从 React 代码内部导入时,Module 对象为空。这发生在 React 和 React Native 项目中。
index.js
在我的终端中运行并node ./index.js
返回预期结果。
我正在编译 ping.c 并使用以下命令输出 ping.js:
emcc ping.c -o ping.js -s WASM=0 -s EXPORTED_FUNCTIONS='["_pingIt"]'
ping.c:
#include <stdio.h>
#include <emscripten.h>
EMSCRIPTEN_KEEPALIVE
int pingIt() {
return 1;
}
索引.js:
let Module = require('./ping.js');
module.exports = Module;
我正在从中导出moduleindex.js
并将其导入到我的 React 代码中。
当前行为
// Running in React
console.log(Module); // returns {}
预期行为
// Running in React
console.log(Module._pingIt()); // should return 1