Nan :: AsyncQueue在运行时失败

时间:2018-04-08 15:42:09

标签: javascript c++ node.js-addon

您好我正在学习插件实现。我收到以下错误。

此错误来自js文件:

  

vec1.add_number(20,function(err,res))SyntaxError:意外的令牌)

index.js:

var m = require('./');
   var vec1 = new  m.Vector(20, 10, 0); // call to new
   vec1.add_number(20,function(err,res)) // **here is the error pls help to fix**
    {
    if(err)
    console.error(err);
    else
    console.log('Final Result=%d',res);

testworker.cc

#include<nan.h>
#include  "testWorker.h"
#include<iostream>
void TestWorker::Execute()
{
 std::cout<<"its Execition\n";
 myNumber +=6;
}

void TestWorker::Handleokcallback()
{
std::cout<<"Enter to Handleokcallback\n";
Nan::HandleScope scope;
auto numberjs= Nan::New(myNumber);
v8::local<v8::Value> argv[] ={Nan::Undefined,numberjs};
myCallback->call(2,argv);    
}

这是错误日志

module.js:435   return process.dlopen(module,path._makeLong(filename));                  ^

错误:/home/admin1/Desktop/node-addon-tutorial-master/VectorExample/build/Release/myModule.node:undefined symbol:_ZTV10TestWorker     在错误(本机)     at Object.Module._extensions..node(module.js:435:18)     在Module.load(module.js:344:32)     在Function.Module._load(module.js:301:12)     在Module.require(module.js:354:17)     at require(internal / module.js:12:17)     在对象。 (/home/admin1/Desktop/node-addon-tutorial-master/VectorExample/bindings.js:6:13)     在Module._compile(module.js:410:26)     at Object.Module._extensions..js(module.js:417:10)     在Module.load(module.js:344:32)

1 个答案:

答案 0 :(得分:1)

)中还有一个function(err,res)),并且您最后错过了})

这是您的代码,没有语法错误。

var m = require('./');
var vec1 = new  m.Vector(20, 10, 0); // call to new
vec1.add_number(20,function(err,res) { // changed ) with {
    if(err)
       console.error(err);
    else
       console.log('Final Result=%d',res);
}); // Added this