この記事では、nodejs プラグインを使用して関数ファクトリとオブジェクト ファクトリの例を完成させます。
最初に次の node.js コードを見てください。参照する my_node_addon プラグインをエクスポートする必要があります。
createFunc 関数と createObject 関数、および createObject 関数によって返されるオブジェクトには
add と addCallback の 2 つの加算関数
var addon = require('bindings')('my_node_addon.node');
//函数工厂
var func=addon.createFunc()(1);
console.log('Create Function ret:' ,func);
//对象工厂
var obj = addon.createObject();
//调用对象方法
console.log(obj.add(3, 12))
//调用对象的额回调方法
obj.addCallback(1, 2, (ret) => {
console.log(ret);
});
プラグインのソース コード main.cpp は次のとおりです。
#include <napi.h>
/**
* 加法
* @param info
* @return
*/
Napi::Value Add(const Napi::CallbackInfo &info) {
//获取上下文环境
Napi::Env env = info.Env();
//如果参数少于2
if (info.Length() < 2) {
//js中丢出类型异常
Napi::TypeError::New(env, "Wrong number of argumen