如何在V8中将对象传递给JavaScript回调
我正在处理一个节点模块,并试图将子类如何在V8中将对象传递给JavaScript回调,javascript,c++,node.js,v8,Javascript,C++,Node.js,V8,我正在处理一个节点模块,并试图将子类ObjectWrap的类的实例作为参数传递给JavaScript回调 在其他地方,我可以使用以下方法成功地将JavaScript对象展开到同一个类: GitCommit *commit = ObjectWrap::Unwrap<GitCommit>(args[0]->ToObject()); 这可能吗?如果是这样的话,请给我一个例子或相关文档的链接好吗?那么您正在编写一个节点插件。尝试: Handle<Value> argv[
ObjectWrap
的类的实例作为参数传递给JavaScript回调
在其他地方,我可以使用以下方法成功地将JavaScript对象展开到同一个类:
GitCommit *commit = ObjectWrap::Unwrap<GitCommit>(args[0]->ToObject());
这可能吗?如果是这样的话,请给我一个例子或相关文档的链接好吗?那么您正在编写一个节点插件。尝试:
Handle<Value> argv[] = {
// Error code
Integer::New(0),
// The commit
commit->handle_ // Instance of GitCommit : ObjectWrap
};
// Both error code and the commit are passed, JS equiv: callback(error, commit)
ar->callback->Call(Context::GetCurrent()->Global(), 1, argv);
句柄argv[]={
//错误代码
整数::新的(0),
//承诺
提交->句柄//GitCommit的实例:ObjectWrap
};
//错误代码和提交都被传递,JS equiv:callback(error,commit)
ar->callback->Call(Context::GetCurrent()->Global(),1,argv);
非常感谢您的支持!
Handle<Value> argv[] = {
// Error code
Integer::New(0),
// The commit
commit->handle_ // Instance of GitCommit : ObjectWrap
};
// Both error code and the commit are passed, JS equiv: callback(error, commit)
ar->callback->Call(Context::GetCurrent()->Global(), 1, argv);