ArkTS中有没有类似java中反射创建实例的机制

HarmonyOS
2024-12-27 15:23:25
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
fox280

ArkTS提供import 方法动态加载模块

举个例子:

Java中:

Class.forName("DataTable").tagName() 
  • 1.

ArkTS中:

// module.ets
export class DataTable {
  constructor() {
  }
  static tagName(){
    return 'data-table'
  }
}
// Index.ets
import('./module').then(
  module => {
    const t = module.DataTable.tagName();
  });
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

import接口是异步的,返回promise, 可以用await包装成同步的用法;动态import暂只支持编译态依赖,不支持纯运行时加载设备侧二进制包(例如Hsp二进制包)。基本对等于java的Class.forName(),没有DexClassLoader加载设备侧dex文件能力。

分享
微博
QQ
微信
回复
2024-12-27 17:55:50


相关问题
HarmonyOS 中有没有类似tint属性
914浏览 • 1回复 待解决
HarmonyOS 有没有类似JavaClss类实现
610浏览 • 1回复 待解决
ArkTs支持java或者TS Reflect反射用法吗
3921浏览 • 1回复 待解决
鸿蒙java中有没有控制4G/5G开关接口
5962浏览 • 1回复 待解决
HarmonyOS中有没有WeakRef
876浏览 • 1回复 待解决