#鸿蒙通关秘籍#开发鸿蒙动态卡片时如何利用router或call事件保持卡片内容实时更新

HarmonyOS
2天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
ASIC红尘滚滚

可以在卡片中通过postCardAction接口触发router或call事件,从而实现卡片内容的刷新。

通过router事件刷新卡片: bash @Entry @Component struct WidgetUpdateRouterCard { build() { Column() { Row() { Button() { Text("跳转更新") } .onClick(() => { postCardAction(this, { action: 'router', abilityName: 'WidgetEventRouterEntryAbility', params: { routerDetail: 'RouterFromCard' } }); }) } } } }

在UIAbility中响应router事件: bash export default class WidgetEventRouterEntryAbility extends UIAbility { onCreate(want: Want): void { if (want.parameters) { // 更新卡片显示 let formMsg = formBindingData.createFormBindingData({ 'routerDetail': '信息内容' }); formProvider.updateForm(want.parameters['formId'], formMsg); } } }


分享
微博
QQ
微信
回复
2天前
相关问题