Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用emscripten::val将带参数的javascript回调函数传递到emscripten模块?_Javascript_C++_Emscripten - Fatal编程技术网

如何使用emscripten::val将带参数的javascript回调函数传递到emscripten模块?

如何使用emscripten::val将带参数的javascript回调函数传递到emscripten模块?,javascript,c++,emscripten,Javascript,C++,Emscripten,我试图调用一个内置的emscripten函数,该函数将javascript回调作为参数。 然后调用EcliScript::VAL以C++为例: C++: void myFunc(emscripten::val callback) { callback("args"); } EMSCRIPTEN_BINDINGS(Module) { function("myFunc", &myFunc); } Module.myFunc(funct

我试图调用一个内置的emscripten函数,该函数将javascript回调作为参数。 然后调用EcliScript::VAL以C++为例: C++:

void myFunc(emscripten::val callback) {
    callback("args");
}
EMSCRIPTEN_BINDINGS(Module) {
    function("myFunc", &myFunc);
}
Module.myFunc(function(arg){
    console.log(arg);
}) 
然后在Javascript中,我可以像这样使用上面的函数:

void myFunc(emscripten::val callback) {
    callback("args");
}
EMSCRIPTEN_BINDINGS(Module) {
    function("myFunc", &myFunc);
}
Module.myFunc(function(arg){
    console.log(arg);
}) 

实际上,只有当回调不带任何参数时,我才能在C++内部使用回调。但对于问题中的参数,em++无法成功编译。我想知道emscripten::val是否有一个特殊的结构,我们可以提取参数或类似的东西