记录HarmonyOS 鸿蒙Next router跳转-back

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

记录HarmonyOS 鸿蒙Next router跳转-back

  1. 首次进入A页面(页面栈数量为1),
  2. A页面跳转到B页面(pushUrl-页面栈数量为2),
  3. B页面跳转到C页面(pushUrl-页面栈数量为3),
  4. C页面返回到A页面(back-页面栈数量为1),这里如果使用pushUrl返回到A页面,页面栈数量就会变为4,在A页面继续跳转到B页面,页面栈数量就会变为5,继续跳转就继续增加,直到页面栈数量增加到32不再继续跳转,

即出栈后页面栈里面的page会被回收,所以当想要返回之前的某个页面最好使用back

如果在C页面使用back返回到A页面就只会执行onPageShow中的内容,

如果在C页面使用pushUrl返回到A页面就只会执行aboutToAppear和onPageShow


更多关于记录HarmonyOS 鸿蒙Next router跳转-back的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

在HarmonyOS中,router模块用于页面跳转,back方法用于返回上一个页面。router.push用于跳转到指定页面,router.replace用于替换当前页面,router.back用于返回上一个页面。router.back可以携带参数,通过params传递数据。例如:

import router from '@ohos.router';

// 跳转到指定页面
router.push({
  url: 'pages/NextPage',
  params: { key: 'value' }
});

// 返回上一个页面并传递参数
router.back({
  url: 'pages/PreviousPage',
  params: { key: 'value' }
});

router.back方法会关闭当前页面并返回到上一个页面,如果指定了url,则会返回到该页面。params参数用于在页面间传递数据。

更多关于记录HarmonyOS 鸿蒙Next router跳转-back的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS(鸿蒙)中,使用router进行页面跳转时,可以通过router.push方法实现页面导航。若需返回上一页,可使用router.back方法。例如:

import router from '@ohos.router';

// 跳转到目标页面
router.push({
  url: 'pages/TargetPage'
});

// 返回上一页
router.back();

router.back方法会返回到上一个页面栈中的页面,支持传递参数。若需返回指定页面,可使用router.replacerouter.clear方法。

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!