CallbackInfo(回调信息)
表示正在进行的 JavaScript 请求的组件的对象。
Napi::CallbackInfo对象通常由 Node.js 运行时或 node-addon-api 基础设施创建并传递。
Napi::CallbackInfo对象包含调用者传递的参数。参数的数量由Length方法返回。每个单独的参数可以使用operator[]方法访问。
SetData和Data方法用于设置和检索Napi::CallbackInfo对象中包含的数据指针。
方法
构造函数
cpp
Napi::CallbackInfo::CallbackInfo(napi_env env, napi_callback_info info);
[in] env:用于构造Napi::CallbackInfo对象的napi_env环境。[in] info:用于构造Napi::CallbackInfo对象的napi_callback_info数据结构。
Env
cpp
Napi::Env Napi::CallbackInfo::Env() const;
返回进行请求所在的Env对象。
NewTarget
cpp
Napi::Value Napi::CallbackInfo::NewTarget() const;
返回构造函数调用的new.target值。如果被调用的函数(且Napi::NCallbackInfo是为其传递的)不是构造函数调用,则对返回值调用IsEmpty()会返回true。
IsConstructCall
cpp
bool Napi::CallbackInfo::IsConstructCall() const;
返回一个布尔值,指示被调用的函数(且Napi::CallbackInfo是为其传递的)是否是构造函数调用。
Length
cpp
size_t Napi::CallbackInfo::Length() const;
返回Napi::CallbackInfo对象中传递的参数数量。
operator []
cpp
const Napi::Value operator [](size_t index) const;
[in] index:所需参数的从零开始的索引。
返回包含所需参数的Napi::Value对象。
This
cpp
Napi::Value Napi::CallbackInfo::This() const;
返回调用的 JavaScript this值。
Data
cpp
void* Napi::CallbackInfo::Data() const;
返回回调的数据指针。
SetData
cpp
void Napi::CallbackInfo::SetData(void* data);
[in] data:要与此Napi::CallbackInfo对象关联的新数据指针。
返回void。
cpp
Napi::CallbackInfo::~CallbackInfo();
// 禁止复制以防止多次释放_dynamicArgs
Napi::CallbackInfo::CallbackInfo(CallbackInfo const &) = delete;
void Napi::CallbackInfo::operator=(CallbackInfo const &) = delete;