使用自定义订阅事件的方式来实现该功能:参考demo://index.ets import display from '@ohos.display'; import emitter from '@ohos.events.emitter'; import { router } from '@kit.ArkUI'; import { JSON } from '@kit.ArkTS'; @Entry @Component struct DisplayTest { build() { Column({space:20}){ Button('Test') .type(ButtonType.Capsule) .onClick(() => { let innerEvent: emitter.InnerEvent = { eventId: 12222 }; //触发id为12222的事件 emitter.on(innerEvent, (data) => { console.info('once callback' + JSON.stringify(data)); }); router.pushUrl({ url:'pages/PageOne' }) }) .width('50%') } .width("100%") .height('100%') .justifyContent(FlexAlign.Center) } } //PageOne.ets import emitter from '@ohos.events.emitter'; @Entry @Component struct PageOne { build() { Column(){ Text('PageOne') .width('50%') Button('send') .type(ButtonType.Capsule) .width('50%') .onClick(() => { let eventData: emitter.EventData = { data: { "content": "c", "id": 1, } }; let innerEvent: emitter.InnerEvent = { eventId: 12222, priority: emitter.EventPriority.HIGH }; //发布id为12222的事件 emitter.emit(innerEvent, eventData); }) } .justifyContent(FlexAlign.Center) .width('100%') .height('100%') } }参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-emitter-V5\#emitteremit
使用自定义订阅事件的方式来实现该功能:参考demo:
参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-emitter-V5\#emitteremit