HarmonyOS 是否可以对ts原生对象提供扩展方法

想将一些工具类的方法改为扩展方法使用,如:

export {};
declare global {
  interface String {
    isEmpty(): boolean;
  }
}
String.prototype.isEmpty= ():boolean=> {
  // 具体实现
  return false;
};

现在添加后发现ArkTS编译报错,无法找到扩展的方法。现在ArkTS是否可以实现?如果可以,该怎么处理?

HarmonyOS
5天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

ArkTS没有原型的概念,目前对于拓展的相关述求,只能通过继承基类的方式进行扩展。 定义一个基类,包含需要扩展的方法。

class Base {
 method1() {
   console.log('method1 from Base');
 }
}

定义一个继承自基类的子类,重写需要扩展的方法,并在子类中添加新的方法。

class Child extends Base {
  method1() {
    console.log('method1 from Child');
  }
  method2() {
    console.log('method2 from Child');
  }
}
分享
微博
QQ
微信
回复
5天前
相关问题
HarmonyOS string、number扩展方法
72浏览 • 0回复 待解决
HarmonyOS是否有官方提供的加锁方法
389浏览 • 1回复 待解决
HarmonyOS 是否方法可以清除缓存
115浏览 • 1回复 待解决
c++侧可以直接调用ts的static方法吗?
2233浏览 • 1回复 待解决
ArkTS写法是否可以TS/JS的逻辑理解
1947浏览 • 1回复 待解决
HarmonyOS Web是否提供自定义dns的方法
466浏览 • 1回复 待解决
HarmonyOS ts是否支持反射?
270浏览 • 1回复 待解决
HarmonyOS 中的 .ts 代码如何遍历对象
199浏览 • 1回复 待解决