HarmonyOS导出多个类问题

index.d.ts 导出多个类的时候,napi_init.cpp 要如何实现?是否有多 export class 实现参考?

HarmonyOS
2024-08-27 11:55:34
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
zxjiu

参考代码:

// Native侧模块初始化 
static napi_value Init(napi_env env, napi_value exports) 
{ 
  // 模块TestEntryA定义 
  std::string class_name = "TestEntryA"; 
  napi_property_descriptor desc[] = {{"sum1", nullptr, Sum1, nullptr, nullptr, nullptr, napi_static, nullptr}, 
{"sum2", nullptr, Sum2, nullptr, nullptr, nullptr, napi_static, nullptr}}; 
napi_value defined_class = nullptr; 
napi_define_class(env, class_name.c_str(), class_name.length(), Constructor, nullptr, 2, desc, &defined_class); 
// 模块TestEntryB定义 
std::string class_nameB = "TestEntryB"; 
napi_property_descriptor descB[] = {{"sum3", nullptr, Sum3, nullptr, nullptr, nullptr, napi_static, nullptr}, 
{"sum4", nullptr, Sum4, nullptr, nullptr, nullptr, napi_static, nullptr}}; 
napi_value defined_classB = nullptr; 
napi_define_class(env, class_nameB.c_str(), class_nameB.length(), Constructor, nullptr, 2, descB, &defined_classB); 
 
const napi_property_descriptor exports_desc[] = { 
  {class_name.c_str(), nullptr, nullptr, nullptr, nullptr, defined_class, napi_default, nullptr}, 
{class_nameB.c_str(), nullptr, nullptr, nullptr, nullptr, defined_classB, napi_default, nullptr}}; 
napi_define_properties(env, exports, 2, exports_desc); 
return exports; 
} 
// index.d.ts导出 
export declare class TestEntryA { 
  static sum1 (a: number, b: number) : number; 
  static sum2 (a: number, b: number) : number; 
} 
export declare class TestEntryB { 
  static sum3 (a: number, b: number) : number; 
  static sum4 (a: number, b: number) : number; 
} 
// ArkTS使用 
import {TestEntryA, TestEntryB} from 'libentry.so'; 
TestEntryA.sum1(2, 3); 
TestEntryB.sum3(2, 3);
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
分享
微博
QQ
微信
回复
2024-08-27 19:00:41
相关问题
Har如何导出ts和方法?
854浏览 • 1回复 待解决
HarmonyOS 导出使用时报未初始化
829浏览 • 1回复 待解决
HarmonyOS @Export与@Style的导出问题
1298浏览 • 1回复 待解决
HarmonyOS 多个@Prop变化顺序问题
1083浏览 • 1回复 待解决
HarmonyOS flutter问题
726浏览 • 1回复 待解决
多个feature模块的问题
2425浏览 • 1回复 待解决
HarmonyOS 多个HAP包跳转的问题
835浏览 • 1回复 待解决
HarmonyOS 实现方案的问题
750浏览 • 2回复 待解决
HarmonyOS color argb工具问题
1085浏览 • 1回复 待解决
HarmonyOS 卡证识别问题
946浏览 • 1回复 待解决
HarmonyOS scroll嵌套多个web,显示问题
806浏览 • 1回复 待解决