当前位置: 首页 > news >正文

HarmonyOS开发之路由跳转

文章目录

  • 一、路由跳转模式与实例
    • 1.router.pushUrl
    • 2.router.replaceUrl
    • 3.router.back


一、路由跳转模式与实例

跳转模式 有点类似于vue的路由跳转

  • router.pushUrl 保留路由栈,保留当前的页面;
  • router.replaceUrl 销毁当前页面,跳转一个新的页面 ;
  • router.back 返回上个路由栈保存的页面;

跳转实例

  • router.RouterMode.Standard 默认模式 压入栈顶;
  • router.RouterMode.Single 如果跳转的目标页在路由栈中已经存在,那么就会将距离栈顶最近的url放到栈顶,并重新加载。如果不存在 将按照默认模式执行;

1.router.pushUrl

import router from '@ohos.router'
//跳转到新的页面 保留当前路由栈router.pushUrl({//跳转路径url:'pages/HomePage',//传递参数params:{id:1}},//默认模式router.RouterMode.Standard,(err) => {if(err){console.log('路由失败')}})
})//接取参数
router.getParams()['id']

2.router.replaceUrl

import router from '@ohos.router'
//跳转到新的页面 保留当前路由栈router.replaceUrl ({//跳转路径url:'pages/HomePage',//传递参数params:{id:1}},//默认模式router.RouterMode.Standard,(err) => {if(err){console.log('路由失败')}})
})//接取参数
router.getParams()['id']

3.router.back

import router from '@ohos.router'
    //1、直接返回router.back();//2、返回到指定页面router.back({url: 'pages/Info'});//3、返回到指定页面,并传递自定义参数信息router.back({url: 'pages/Info',params: {id:1}});//4、系统默认返回询问框router.showAlertBeforeBackPage({message:'确定返回到login页面吗?'})router.back()//5、自定义询问框import promptAction from '@ohos.promptAction'promptAction.showDialog({message:'确定返回到login页面吗?',buttons: [{text: '取消',color: '#FF0000'},{text: '确认',color: '#0099FF'}]}).then((result)=>{if(result.index === 0){console.log('点击了取消按钮')}else if(result.index === 1){// 用户点击了“确认”按钮console.log('用户点击了“确认”按钮')// 调用router.back()方法,返回上一个页面router.back();}}).catch(err => {console.error(`Invoke showDialog failed, code is ${err.code}, message is ${err.message}`);})})

http://www.mrgr.cn/news/23690.html

相关文章:

  • 动态代理IP池设计:打造高效网络工具
  • 苹果iOS/ iPadOS18 RC 版、17.7 RC版更新发布
  • 再创辉煌!望繁信科技斩获第十三届中国创新创业大赛四川赛区桂冠
  • Python进阶——使用python操作数据库!
  • 加密软件是什么?有哪些用处呢?
  • 机器学习 第10章 降维与度量学习
  • STM32学习笔记(二、初识stm32单片机)
  • 商标名称含有“坤沙”被驳回,因为这些原因!
  • 【PWN · tcache | UAF】[2024 · 长城杯] KyLinHeap
  • SSM四川省旅游推荐系统---附源码80178
  • 【docker】Docker容器文件操作指南:从查看到传输
  • 使用Python中的`zip()`函数
  • 【bat】如何用 .bat 打开带空格的文件夹
  • Xcode 16 RC (16A242) 发布下载,正式版下周公布
  • Xcode报错:Return from initializer without initializing all stored properties
  • 15.3 JDBC数据库编程2
  • ‘“node“‘ �����ڲ����ⲿ���Ҳ���ǿ����еij��� ���������ļ���
  • 第11章 32位x86处理器编程架构
  • Swift 中的函数:定义、使用与实践指南
  • firewalld中drop、reject、accept规则详解