- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
UIAbility内页面的跳转与数据传递
概述为了丰富应用的内容,一个UIAbility内可能有多个页面,这就涉及到UIAbility内页面的跳转与数据传递。页面间的跳转可以通过页面路由router模块来实现。也可以通过Navigator路由容器组件实现。
router模块页面路由模块根据页面url找到目标页面,从而实现跳转。通过页面路由模块,可以使用不同的url访问不同的页面,包括跳转到UIAbility内的指定页面、用UIAbility内的某个页面替换当前页面、返回上一页面或指定的页面等。具体使用方法请参见@ohos.router(页面路由)。
使用router模块进行页面跳转和参数接收1.在使用页面路由之前,需要先导入router模块。importrouterfrom@ohos.router;2.使用router模块进行页面跳转的方式有两种:(使用Index跳往Second举例)方式一:router.pushUrl()方式跳转页面(Index页面不会销毁,可以通过back返回)router.pushUrl({??url:?‘pages/Second’,//目标页面路径??params:?{//参数????src:?‘Index页面传来的数据’,??}},?router.RouterMode.Single)//模式,RouterMode.Single单例或RouterMode.Standard
使用router模块进行页面跳转和参数接收方式二:router.replaceUrl()方式跳转页面(Index页面会被销毁)router.replaceUrl({??url:?‘pages/Second’,//目标页面路径??params:?{//参数????src:?‘Index页面传来的数据’,??}},?router.RouterMode.Single)//模式,RouterMode.Single单例或RouterMode.Standard
两种跳转方式页面栈对比IndexIndexSecondpushUrl方式replaceUrl方式Second
使用router模块进行页面跳转和参数接收在完成向目标页面跳转后,怎么在目标页面接收跳转携带的参数呢?3.参数接收调用router.getParams()方法获取Index页面传递过来的自定义参数。import?router?from?@ohos.router;@Entry@Componentstruct?Second?{??@State?src:?string?=?router.getParams()?.[src];??//?页面刷新展示??...}
使用router模块进行页面跳转和参数接收页面跳转效果示例图
使用router模块进行页面跳转和参数接收前面我们举例介绍了如何从Index页面跳转到Second页面,若在Second页面完成操作后,想要返回到Index页面,应该如何实现呢?IndexSecondpushUrl方式SecondreplaceUrl方式调用router.back()返回的目标页面需要在页面栈中存在才能正常跳转。例如调用router.pushUrl()方法跳转到Second页面,在Second页面可以通过调用router.back()方法返回到上一个页面。在Second页面调用pushUrl()方法或replaceUrl()方法到Index不叫页面返回。返回上一个页面。router.back();返回到指定页面。router.back({url:pages/Index});页面返回页面栈中无返回的目标页面,无法返回
使用router模块进行页面跳转和参数接收router.back({??url:?pages/Index,??params:?{????src:?Second页面传来的数据,??}})页面返回示例:import?router?from?@ohos.router;@Entry@Componentstruct?Index?{??@State?src:?string?=?;??onPageShow()?{????this.src?=?router.getParams()?.[src];??}??//?页面刷新展示??...}1.在Second页面中返回,并携带参数2.在Index页面中接收参数
使用router模块进行页面跳转和参数接收页面返回效果图
Navicator路由容器组件Navigator组件也可以进行页面跳转,因为Navigator是一个容器组件,所以在使用时是用Navigator组件包裹住子组件,子组件被点击时实现页面跳转并传参。
Navicator路由容器组件使用Navigator组件跳
您可能关注的文档
- 《HarmonyOS应用开发基础》 课件 知识点1-1-1 HarmonyOS简介.pptx
- 《HarmonyOS应用开发基础》 课件知识点1-1-2 开发前准备.pptx
- 《HarmonyOS应用开发基础》 课件知识点1-2-1 认识TypeScript.pptx
- 《HarmonyOS应用开发基础》 课件知识点1-2-2 TypeScript常用基础数据类型.pptx
- 《HarmonyOS应用开发基础》 课件知识点1-3-1 TypeScript函数.pptx
- 《HarmonyOS应用开发基础》 课件知识点1-3-2 TypeScript面向对象编程.pptx
- 《HarmonyOS应用开发基础》 课件知识点2-1 认识ArkTS工程.pptx
- 《HarmonyOS应用开发基础》 课件知识点2-2 认识ArkTS声明式开发.pptx
- 《HarmonyOS应用开发基础》 课件知识点2-3-1 Row与Column组件的使用.pptx
- 《HarmonyOS应用开发基础》 课件知识点2-3-2 基础组件1.pptx
- +第二单元《梨园撷英》-《甘撒热血写春秋》课件+ 2024—2025学年人教版(2024)初中音乐七年级下册.pptx
- 《谏太宗十思疏》课件32张.pptx
- 2024年新手营养师资格考试试题及答案.docx
- 《鸿门宴》课件77张.pptx
- +第二单元第2课《林泉之心》课件2024-2025学年人美版(2024)初中美术七年级下册.pptx
- 2024年最新营养师考试真题及答案.docx
- 中国光学测试仪器市场发展现状与投资前景规划建议报告2025-2030年.docx
- 中国轨道交通电源系统市场发展动态与投资趋势预测报告2025-2030年.docx
- 中国环氧树脂固化剂行业发展动态与前景趋势分析报告2025-2030年.docx
- 精品解析:2024年江西省中考数学试题(原卷版).docx
最近下载
- 实验四 PCR基因扩增.ppt
- 中国农村的市场和社会结构.ppt VIP
- 超市供货方案.docx VIP
- GB_T 43652-2024城市和社区可持续发展 韧性城市指标.docx VIP
- 2022年12月贵州省第三人民医院第二次公开招聘工作人员18日至20日(一)笔试参考题库含答案解析.docx
- 小学英语_【课堂实录】 Is there a gym around教学设计学情分析教材分析课后反思.doc
- 2024(部编版)历史七年级上册第三单元 大单元教学课件.pptx
- 解读《中华人民共和国学前教育法》 (1).pptx VIP
- 2024年10月中国出口信用保险公司浙江分公司营业部招考1名人员笔试历年参考题库附带答案详解.docx
- 中华人民共和国学前教育法解读.pptx VIP
文档评论(0)