HarmonyOS 鸿蒙Next:当完成某一个业务的时候,期望跳转到目标页面,并且销毁某业务中的所有页面

发布于 1周前 作者 h691938207 来自 鸿蒙OS

HarmonyOS 鸿蒙Next:当完成某一个业务的时候,期望跳转到目标页面,并且销毁某业务中的所有页面 登录场景中:

  • case1: 未登录点击个人中心 -> 登账密 Page -> 登录动态码 Page -> 登录完成 (销毁账密 Page,动态码 Page) -> 跳转到个人中心。此 case 可以用 back 方案进行实现。不清楚是否支持跨模块调用,例如主 APP 是 HAP,登录模块是 HAR。

  • case2: 点击聊天 (未登录) -> 登账密 Page -> 登录动态码 Page -> 登录完成 (销毁账密 Page,动态码 Page) -> 直接跳转到聊天页面,不进行返回。同时从聊天页面返回的时候,直接返回主页面,而不是登录页面。

期望的关键点:

  1. 如何登录完成销毁登录所有页面

  2. 如何跨模块跳转到目标页面,目标页面有可能在栈中存在,也有可能不存在。


更多关于HarmonyOS 鸿蒙Next:当完成某一个业务的时候,期望跳转到目标页面,并且销毁某业务中的所有页面的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

cke_143.png

更多关于HarmonyOS 鸿蒙Next:当完成某一个业务的时候,期望跳转到目标页面,并且销毁某业务中的所有页面的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


官网说这种replaceUrl的方式无法实现转场动画,推荐使用Navigation模式,

  1. 登陆完成后调用一次router.clear,清空掉其他的页面仅保存当前页面;
  2. 跨模块可以使用命名路由,引用后需要在页面引用。
const module = import('har名')

参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkts-routing-0000001813575888#ZH-CN_TOPIC_0000001813575888__%E5%91%BD%E5%90%8D%E8%B7%AF%E7%94%B1

在HarmonyOS鸿蒙系统中,当完成某一个业务并期望跳转到目标页面,同时销毁该业务中的所有页面时,可以通过以下方式实现:

  1. 页面跳转:使用页面路由能力,通过Intent携带目标页面的信息,调用Ability.startAbility方法实现页面跳转。在Intent中,可以设置目标Ability的URI或其他必要的参数。

  2. 销毁页面:在跳转之前,可以通过页面栈管理来销毁当前业务中的所有页面。这通常涉及到获取页面栈的引用,并调用相关方法清空栈。由于鸿蒙系统的页面管理机制与Android有所不同,具体实现方式可能依赖于框架提供的API。例如,如果使用了自定义的页面管理器或框架,应调用其提供的销毁页面方法。

  3. 确保资源释放:在销毁页面时,确保相关的资源(如内存、文件句柄等)得到正确释放,以避免内存泄漏或其他资源占用问题。

请注意,由于鸿蒙系统的不断更新和迭代,上述方法的具体实现细节可能会有所变化。建议查阅最新的鸿蒙系统文档或开发者指南,以获取最准确的信息。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部