HarmonyOS 是否支持匿名类,匿名类如何写

HarmonyOS
2024-12-25 13:11:30
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

ArkTS不支持匿名类,建议使用嵌套类实现(类内部嵌套匿名类)。因为使用匿名类创建的对象类型未知,这与ArkTS不支持structural typing和对象字面量的类型冲突,可以参考以下方案:

export interface IVoiceRecordListener<T> {
  onSuccess: (t: T) => void
  onFailed: (code: string, reason: string) => void
}

let voiceRecordListenerInstance: IVoiceRecordListener<void> = {
  onSuccess: () => {
    console.log('success')
  },
  onFailed: () => {
    console.log('failed')
  }
}

// 原先
class A {
  foo() {
    let a = new class {
      v: number = 123
    }();
  }
}
// 现在
class A {
  foo() {
    class B {
      v: number = 123
    }
    let b = new B();
  }
}
分享
微博
QQ
微信
回复
2024-12-25 14:50:49
相关问题
HarmonyOS ArkTS是否支持使用匿名
1383浏览 • 2回复 待解决
HarmonyOS 匿名抽象
600浏览 • 1回复 待解决
HarmonyOS ets不支持匿名吗?
1248浏览 • 2回复 待解决
匿名内部类如何更新外部类的变量
2576浏览 • 1回复 待解决
ArkTS的方法是否支持重载
3601浏览 • 1回复 待解决
谁分享一下如何实现匿名内部类
2147浏览 • 2回复 待解决
HarmonyOS ArkTS是否支持string转的功能
1103浏览 • 1回复 待解决
arkTS是否支持作为入参
2576浏览 • 1回复 待解决
实现接口的匿名实现传参
1341浏览 • 1回复 待解决
如何写har包的编译脚本?
2046浏览 • 1回复 待解决
在接口内定义匿名回调的语法
2709浏览 • 1回复 待解决
http支持cancel方法
1140浏览 • 1回复 待解决