HarmonyOS语法错误有哪些?

public getObservers<T extends MObserver>(observerClass: { new(): T }): T[] { 
  const observerList: T[] = []; 
  this.observerMap.forEach((observers) => { 
    observers.forEach((observer) => { 
      if (observer instanceof observerClass) { 
        observerList.push(observer); 
      } 
    }); 
  }); 
  return observerList; 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

这是 api 10上的代码片段 在 api 11 中 入参报错 observerClass: { new(): T } 应该如何修改?

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

修改如下:

type ObserverFactory<T> = () => T; 
class ObserverManager { 
  private observerMap: Map<string, MObserver[]> = new Map<string, MObserver[]>(); 
  constructor() { 
  } 
  public getObservers<T extends MObserver>(observerFactory: ObserverFactory<T>): T[] { 
    const observerList: T[] = []; 
    this.observerMap.forEach((observers) => { 
      observers.forEach((observer) => { 
        if (observer instanceof observerFactory) { 
          observerList.push(observer as T); 
        } 
      }); 
    }); 
    return observerList; 
  } 
} 
// 假设 MObserver 是所有观察者的基类 
class MObserver { 
  // 基本的观察者类可以包含一些通用的方法或属性 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
分享
微博
QQ
微信
回复
2024-08-27 18:55:29
相关问题
ArkTS哪些语法规则,懂得吗?
3240浏览 • 1回复 待解决
ArkTS语法咨询的问题懂得吗?
3637浏览 • 1回复 待解决
HarmonyOS 语法问题
1021浏览 • 1回复 待解决
HarmonyOS 语法问题
979浏览 • 1回复 待解决
HarmonyOS ArkTS语法
919浏览 • 1回复 待解决
HarmonyOS换肤方案哪些
1310浏览 • 1回复 待解决
HarmonyOS 开发语法问题
1477浏览 • 1回复 待解决
HarmonyOS的特性哪些
771浏览 • 1回复 待解决
HarmonyOS 换肤方案哪些
1217浏览 • 1回复 待解决
HarmonyOS ArkTS语法问题
1298浏览 • 1回复 待解决
webview 问题哪些
1155浏览 • 1回复 待解决
HarmonyOS 使用Proxy语法报错
1509浏览 • 1回复 待解决
HarmonyOS ArkTS语法报错咨询
1197浏览 • 1回复 待解决
HarmonyOS ArkTS语法适配报错
1212浏览 • 1回复 待解决
HarmonyOS ArkTS语法相关
938浏览 • 1回复 待解决