鸿蒙 - arkTs: 页面路由

页面栈最大容量为32,使用router.clear()可以清空页面栈,释放资源

跳转方式:

  1. router.pushUrl:目标页压入页面栈,使用router.back()可以返回上个页面。
  2. router.replaceUrl:目标页替换当前页,会清空页面栈,释放资源;无法返回上个页面。

实例模式:

  1. Standard:(默认)标准实例模式,每次跳转都会创建一个目标页压入栈顶。
  2. Single:单实例模式,如果目标页已经存在于栈中,则离栈顶最近的同url页面会被移动到栈顶并重新加载

使用示例:

index.ets页面代码:

复制代码
import router from '@ohos.router';

@Entry
@Component
struct Index {
  build() {
    Column() {
      Button('跳转页面')
        .onClick(()=>{
          // 路由跳转
          router.pushUrl(
            {
            url: 'pages/Header', // 路由地址
            params: {id: '996'} // 携带参数
          },
            router.RouterMode.Single,
            err => {
              if(err){
                console.log(JSON.stringify(err))
              }
            }
          )
        })
    }
  }
}

Header.ets页面代码:

复制代码
import router from '@ohos.router'

@Entry
@Component
struct Header {
  // 接收页面参数
  params: any = router.getParams()

  build(){
    Row() {
      Text(this.params.id) // 展示参数
        .fontSize(30)
      Button('返回上个页面')
        .onClick(()=>{
          // pushUrl跳转情况下可以返回上个页面
          router.back()
        })
    }
  }
}
相关推荐
时光慢煮17 分钟前
【Flutter × OpenHarmony】跨端开发实现全局Toast提示卡片
flutter·华为·开源·openharmony
讯方洋哥1 小时前
HarmonyOS App开发——鸿蒙音乐播放机应用App开发
华为·harmonyos
小雨青年2 小时前
【鸿蒙原生开发会议随记 Pro】 会议随记 Pro v1.1 发布 详解 HarmonyOS NEXT 原生国际化(i18n)架构与最佳实践
华为·harmonyos
木斯佳3 小时前
HarmonyOS 6实战(源码教学篇)— Speech Kit TextReader:【仿某云音乐接入语音朗读控件】
华为·harmonyos
南村群童欺我老无力.4 小时前
Flutter 框架跨平台鸿蒙开发 - 校园生活一站式:打造智慧校园服务平台
flutter·华为·harmonyos
南村群童欺我老无力.5 小时前
Flutter 框架跨平台鸿蒙开发 - 城市文创打卡:探索城市文化创意之旅
android·flutter·华为·harmonyos
yingdonglan7 小时前
Flutter 框架跨平台鸿蒙开发 ——AnimatedBuilder性能优化详解
flutter·性能优化·harmonyos
程序员清洒7 小时前
Flutter for OpenHarmony:Icon 与 IconButton — 图标系统集成
前端·学习·flutter·华为
时光慢煮7 小时前
打造跨端驾照学习助手:Flutter × OpenHarmony 实战解析
学习·flutter·华为·开源·openharmony
菜鸟小芯7 小时前
【开源鸿蒙跨平台开发先锋训练营】DAY8~DAY13 底部选项卡&首页功能实现
flutter·harmonyos