HarmonyOS 自定义注解类的实现方案

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

ArkTS自定义注解与TS自定义注解实现方式一致,可以参考如下的aop demo:

@Entry
@Component
struct Page {
  @State message: string = 'Hello World';
  aboutToAppear() {
    this.demo('hello!!!')
  }
  build() {
    Flex() { }.backgroundColor(Color.Green).height('100%');
  }
  @MyDescriptor
  demo(param: string) {
    console.info('…' + param);
    return param;
  }
}
export function MyDescriptor(target: Object, key: string, descriptor: PropertyDescriptor): PropertyDescriptor {
  const originalMethod: Function = descriptor.value
  descriptor.value = (args: Object[]) => {
    console.info(`...Calling ${target.constructor.name} method ${key} with argument: ${args}`)
    const result: Object = originalMethod(args)
    console.info(`...Method ${key} returned: ${result}`)
    return result;
  }
  return descriptor;
}
分享
微博
QQ
微信
回复
7天前
相关问题
HarmonyOS 如何自定义注解
341浏览 • 1回复 待解决
HarmonyOS 工具自定义弹窗方案咨询
174浏览 • 1回复 待解决
HarmonyOS ArkTS是否支持自定义注解
89浏览 • 1回复 待解决
自定义如何实现序列化
2156浏览 • 1回复 待解决
HarmonyOS 自定义相册方案咨询
179浏览 • 1回复 待解决
HarmonyOS 如何判断自定义类型
186浏览 • 1回复 待解决
HarmonyOS 自定义键盘防录屏方案
182浏览 • 1回复 待解决
HarmonyOS 实现方案问题
114浏览 • 2回复 待解决
HarmonyOS补充nativgation自定义实现
386浏览 • 1回复 待解决
HarmonyOS 自定义控件实现
133浏览 • 1回复 待解决
HarmonyOS 全局自定义弹窗实现
103浏览 • 1回复 待解决
getContext(this)能否在自定义中使用
2359浏览 • 1回复 待解决
HarmonyOS 如何实现自定义Toast
85浏览 • 1回复 待解决
HarmonyOS 使用了@Sendable注解报错
106浏览 • 1回复 待解决
HarmonyOS如何实现自定义scheme?
131浏览 • 1回复 待解决