【发布时间】:2022-10-21 21:50:56
【问题描述】:
我是 NAPI 新手,我正在尝试将旧 Nan 代码转换为 NAPI。
发生的事情是我有这样的结构:
class PointWrapper : public Napi::ObjectWrap<PointWrapper> {
public:
static void init(Napi::Env env, Napi::Object exports);
PointWrapper(const Napi::CallbackInfo& info);
private:
Point point;
}
而且我以正确的方式包装了所有内容,因此如果我调用 JS new Pointer(1, 2),它将实例化 PointerWrapper 并将正确的字段设置为 Point。到目前为止,一切都很好。
现在,问题是稍后我有一个包含Range 的C++ 代码-Range 基本上是start 和end,每个都包含一个Point。
我也有RangeWrapper,它与PointWrapper 做同样的事情,但对于范围。这个RangeWrapper 有一个getStart,基本上需要返回一个PointWrapper。
现在,我如何从RangeWrapper 实例化PointWrapper?基本上,我想要PointWrapper 上的构造函数,给出Point,我可以得到PointWrapper,所有这些都是在C++ 中而不是在JS 中。可能吗?我看到的每个代码都试图从里面PointWrapper,从不外部
【问题讨论】:
-
任何人都找到了解决方案。
标签: c++ node.js constructor node-addon-api