如何使用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中的函数替换
728浏览 • 1回复 待解决
运行时AOPdemo测试
856浏览 • 1回复 待解决
如何对异步方法进行/替换
580浏览 • 1回复 待解决
基于AOP的代码,都有哪些场景?
581浏览 • 1回复 待解决
HarmonyOS 如何做行为统计
252浏览 • 1回复 待解决
harmony os demuxer 接口实现开源了嘛 ?
8722浏览 • 1回复 待解决
利用native接口实现一个圆角矩形
1502浏览 • 1回复 待解决
使用dialog窗口实现红包雨窗口创建
670浏览 • 1回复 待解决
HarmonyOS桌面小窗口实现方案
329浏览 • 1回复 待解决
HarmonyOS 关于AOP具体使用方法
279浏览 • 1回复 待解决
基于子窗口实现应用内悬浮窗
619浏览 • 1回复 待解决
ArkTS中globalThis无法使用如何替换
2176浏览 • 1回复 待解决
如何选择使用同步接口还是异步接口
2015浏览 • 1回复 待解决
长按事件如何重复触发
1971浏览 • 1回复 待解决