TS侧如何批量传递函数到native侧
在native需要调用一系列函数,如果每个方法都通过单独的参数传递到native侧的话,会比较繁琐。此时可以将函数包装在一个对象或者数组中,通过传递对象或数组达成传递一系列函数的目的。本文通过在数组中传递两个匿名函数及一个对象的方式完成TS侧批量传递函数到native侧的目的。
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
Native调用ArkTS侧类函数
973浏览 • 1回复 待解决
arkts侧hashmap转为native侧
965浏览 • 1回复 待解决
ArkTS侧如何接收Native侧的键值对进行修改并返回到Native侧
2336浏览 • 1回复 待解决
父组件给子组件传递函数
292浏览 • 1回复 待解决
如何在Native侧调用ArkTS侧异步方法,并获取异步计算结果到Native侧
2691浏览 • 1回复 待解决
ArkTS侧与Native侧如何进行map数据交互
2249浏览 • 1回复 待解决
Native侧如何获取ArkTS侧Object对象及其成员变量
2661浏览 • 1回复 待解决
ArkTS侧与Native侧分别如何动态加载SO库
2484浏览 • 1回复 待解决
Native侧如何打印char指针
1806浏览 • 1回复 待解决
web组件中应用侧调用前端页面函数无法传递参数
236浏览 • 1回复 待解决
如何在Native侧释放ArkTS对象
2357浏览 • 1回复 待解决
在Native侧如何精准获取ArkTS侧传入的字符串长度
2478浏览 • 1回复 待解决
如何在Native侧获取APP版本信息
2309浏览 • 1回复 待解决
native侧如何使用类的静态方法
837浏览 • 1回复 待解决
native侧的log获取不到
1634浏览 • 1回复 待解决
Napi回调ArkTS,Native侧日志通过监听回调到JS侧
1118浏览 • 1回复 待解决
native侧如何调用类的静态方法?
1132浏览 • 1回复 待解决
Native侧创建线程是否有限制
2198浏览 • 1回复 待解决
在Native侧进行跨模块加载
830浏览 • 1回复 待解决
Native侧如何获取可操作的文件目录
2053浏览 • 1回复 待解决
Native侧如何使用hilog打印出日志信息
2388浏览 • 1回复 待解决
Native侧如何引入头文件deviceinfo.h
1898浏览 • 1回复 待解决
在Native侧如何集成三方SO库
2237浏览 • 1回复 待解决
通过PixelMap_CreatePixelMap创建的对象,内存在ArkTS侧和Native侧是否共享
2189浏览 • 1回复 待解决
在Native侧释放ArkTS对象的方法
496浏览 • 1回复 待解决
使用的核心API
napi_get_element
napi_get_named_property
napi_call_function
napi相关api使用可参考:https://nodejs.org/api/n-api.html
nodejs在HarmonyOS的支持情况可参考:https://gitee.com/openharmony/arkui_napi/blob/master/libnapi.ndk.json
核心代码解释
.cpp
index.ets
DataModel.ets
上述代码中,index.ets文件中创建一个arr数组,存放两个匿名函数及一个DateModel对象(DateModel中存在两个方法)。将数组传入到c++侧后,通过napi_get_element 方法分别获得数组中的两个匿名函数及DateModel对象。在通过napi_get_named_property方法获取DateModel对象中的方法,最后通过napi_call_function方法分别调用获得的方法,经测试上述方法均可成功调用。
注:napi_call_function函数可以传递多个参数,上述代码中分别尝试了传入一个和两个参数的情况。
实现效果
c++侧能正常获取并调用arkts侧传递的方法
适配的版本信息
·IDE:DevEco Studio 4.1.1.300
·SDK:HarmoneyOS 4.0.0.42