我正在帮助PR for node-tree-sitter。这是我第一次使用nodejs C ++绑定。
我遇到一种情况,即使调用了构造函数,对Nan::NanInstance()
的调用总是返回一个空对象。
Tree :: NewInstance()获取树指针。 对Nan :: NewInstance()的调用有效。我可以确认Tree :: New()已被调用,并且 通过比较指针值正确传递了它的参数。
但是由于某些原因,Nan::NewInstance()
的返回值返回一个空对象。
作为测试,我查看了node-addon-examples并修改了示例以使其遵循 保姆模式 https://github.com/bdurrani/node-addon-examples/blob/f423f0390bd547230f56207bab3db279ea707289/6_object_wrap/nan/one.cc#L16
One::NewInstance()
获得指向某些c ++类的指针
调用它的构造函数,这次是Nan::NewInstance()
的返回值
返回一个不为空的对象。代码几乎相同。
我以前对节点绑定没有太多的兴趣。任何想法,我将如何调试
NewInstance()
返回一个空对象。我没有看到任何错误或发生任何事情。
您可以在以下分支中查看我的更改: https://github.com/bdurrani/node-tree-sitter/tree/node-12-test/src
有人有什么建议吗?我只是想弄清楚如何调试这样的问题。
自Tree::New()
返回以来,似乎发生了很多事情,最终我以空对象告终。