#鸿蒙通关秘籍#ArkUI框架中的事件传递机制是如何运行的,能否讲一个例子说说?

HarmonyOS
2024-12-06 14:55:15
586浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
DNS碧海青天YY心

事件传递机制主要通过EventHub来实现。这里有一个例子:

// 在UIAbility中注册事件
export default class EntryAbility extends UIAbility {
    onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
        let eventhub = this.context.eventHub;
        eventhub.on('greet', this.greetEvent);
    }

    greetEvent(name: string): void {
        console.log(`Hello, ${name}!`);
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
// 在UI中触发事件
@Entry@Component
struct GreetingPage {
    private context = getContext(this);

    build() {
        Button('Greet')
        .onClick(() => {
            this.context.eventHub.emit('greet', 'World');
        });
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
分享
微博
QQ
微信
回复
2024-12-06 15:41:28


相关问题
#鸿蒙通关秘籍#List事件处理机制
923浏览 • 1回复 待解决
HarmonyOS 能写一个装饰器例子
499浏览 • 1回复 待解决