如何使用AOP接口实现重复插桩或替换?

如何使用AOP接口实现重复插桩或替换?

HarmonyOS
2024-05-23 22:09:42
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
roseprodigal

AOP提供的接口支持对方法重复插桩或替换的操作。

参考代码:

采用addBefore(编译前插桩)作为参考例子,重复插桩后,后插桩的代码段先执行。

class Test {                
  static data: string = "initData"; 
  static printData(): void { 
    console.log("execute original printData"); 
  } 
} 
Test.printData(); 
  
util.Aspect.addBefore(Test, "printData", true, 
  (classObj: Test) => { 
    console.log("execute before 1"); 
  } 
); 
Test.printData(); 
  
util.Aspect.addBefore(Test, "printData", true, 
  (classObj: Test) => { 
    console.log("execute before 2"); 
  } 
); 
util.Aspect.addBefore(Test, "printData", true, 
  (classObj: Test) => { 
    console.log("execute before 3"); 
  } 
); 
Test.printData();

分享
微博
QQ
微信
回复
2024-05-24 21:58:43
相关问题
如何对namespace中的函数替换
298浏览 • 1回复 待解决
如何对异步方法进行/替换
261浏览 • 1回复 待解决
运行时AOPdemo测试
434浏览 • 1回复 待解决
基于AOP的代码,都有哪些场景?
245浏览 • 1回复 待解决
harmony os demuxer 接口实现开源了嘛 ?
7352浏览 • 1回复 待解决
利用native接口实现一个圆角矩形
409浏览 • 1回复 待解决
使用dialog窗口实现红包雨窗口创建
336浏览 • 1回复 待解决
ArkTS中globalThis无法使用如何替换
604浏览 • 1回复 待解决
如何选择使用同步接口还是异步接口
584浏览 • 1回复 待解决
基于子窗口实现应用内悬浮窗
146浏览 • 1回复 待解决
长按事件如何重复触发
621浏览 • 1回复 待解决
如何使用接口下载文件
683浏览 • 1回复 待解决
Canvas如何触发刷新重复绘制?
328浏览 • 1回复 待解决
如何通过AOP统计方法执行时间
242浏览 • 1回复 待解决
如何实现页面加载前从接口获取数据
868浏览 • 1回复 待解决