HarmonyOS 如何在页面退出的时候执行回调?

比如想在某个页面打开的时候设置一个回调进去,页面退出的时候调用这个回调来通知调用方,代码如下,但是在aboutToAppear中只能获取到test参数,completionCallback参数永远是undefined。这个原因是什么,如何解决?

private async startFaceAuth(params: AuthCheckParams): Promise<boolean> {
  return new Promise((resolve, reject) => {
    router.pushNamedRoute({
      name: "VerifyFacePager",
      params: {
        test: "asasss",
        completionCallback: (success: boolean) => {
          resolve(success)
        }
      }
    })
  })
}
@Entry({ routeName: "VerifyFacePager" })
@Component
export struct VerifyFacePager {
  @State isAgree: boolean = false
  @State message: string = '发起认证';
  @State certifyID: string = ''
  uid: number = 0
  metaInfo: string = ""
  completionCallback?: (success: boolean) => void

  aboutToAppear(): void {
    const params = router.getParams() as VerifyFacePagerParams
    this.completionCallback = params.completionCallback
    console.log("aboutToAppear", params)
  }
}
阅读 576
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进