HarmonyOS Navigation是否支持function类型参数?

Navigation通过NavPathStack进行页面跳转,是否支持传function类型参数?

HarmonyOS
2024-10-12 11:43:34
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

不可以直接传,可参考下面简版示例。方式1:

// 1.声明一个类  
export class TmpClass{  
  count:number=10  
  tempClick:(e:string)=>void = (e)=>{}  
}  
Column() {  
        Button('pushPath', { stateEffect: true, type: ButtonType.Capsule })  
          .width('80%')  
          .height(40)  
          .margin(20)  
          .onClick(() => {  
            let tmp = new TmpClass()  
            tmp.tempClick = (e)=>{  
              console.log(e)  
            }  
            //将name指定的NavDestination页面信息入栈  
            this.pageInfos.pushPath({ name: 'pageOne',param:tmp },false)  
          })  
      }  
// 在目标页面获取  
import {TmpClass} from './NavigationPage'  
aboutToAppear(): void {  
    let params:TmpClass[] = this.pageInfos.getParamByName('pageOne') as TmpClass[]  
    let temp = params[0]  
    temp.tempClick('11111111')  
  }

方式2EventHub 事件触发函数回调,参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-inner-application-eventhub-V5

分享
微博
QQ
微信
回复
2024-10-12 16:53:45