Uni-app页面路由区分注意事项
总结Tips:
(1)navigateTo,redirectTo 只能打开非 tabBar页面
(2)switchTab只能打开 TabBar 页面
(3)reLaunch可以打开任意界面
(4)页面底部的 tabBar 由页面决定,即只要是定义为 tabBar 的页面,底部都有tabBar
(5)不能在 App.vue 里面进行页面跳转
uni.navigateTo( OBJECT) —— 保留当前页面,跳转到应用内的某个页面,使用 uni.navigateBack 可以返回到原来页面
ONJECT参数说明:
| 参数 | 类型 | 必填 | 默认值 | 说明 | 平台差异说明 |
| url | String | 是 |
需要跳转的应用内非tabBar的页面路径,路径后可以带参数。参数与路径之间使用 ? 分隔,参数键与参数值用 = 连接,不同的参数用 & 分隔; 例如:' path?key=value&key2=value2 ',path为跳转的目标页面路径,目标页面的onLoad函数可以得到传递的参数 |
||
| animationType | String | 否 | pop-in | 窗口现实的动画效果 | 5+APP |
| animationDuration | Number | 否 | 300 | 窗口动画持续时间,单位为ms | 5+APP |
| success | Function | 否 | 接口调用成功的回调函数 | ||
| fail | Function | 否 | 接口调用失败的回调函数 | ||
| complete | Function | 否 | 接口调用结束的回调函数(成功、失败都会执行) |
注意:
页面跳转路径有层级限制,不能无限跳转新页面
跳转到 tabBar 页面只能使用 switchTab 跳转
不能在 App.vue 文件里进行页面跳转
路由API的目标页面必须是在 pages.json 里注册的vue页面。如果想打开 web url,在APP平台可以使用 plus.runtime.openURL 或 web-view组件;H5平台使用 window.open ;小程序平台使用web-view组件(url需在小程序的联网白名单里)。
uni.redirectTo( OBJECT )——关闭当前页面,跳转到应用内的某个页面
OBJECT参数说明
| 参数 | 类型 | 必填 | 说明 |
| url | String | 是 |
需要跳转的应用内非tabBar的页面路径,路径后可以带参数,。参数与路径之间使用 ? 分隔,参数键与参数值用 = 连接,不同的参数用 & 分隔; 例如:' path?key=value&key2=value2 ' |
| success | Function | 否 | 接口调用成功的回调函数 |
| fail | Function | 否 | 接口调用失败的回调函数 |
| complete | Function | 否 | 接口调用结束的回调函数(成功、失败都会执行) |
uni.reLaunch( OBJECT )——关闭所有页面,打开到应用内的某个页面
OBJECT参数说明
| 参数 | 类型 | 必填 | 说明 |
| url | String | 是 |
需要跳转的应用内非tabBar的页面路径,路径后可以带参数,。参数与路径之间使用 ? 分隔,参数键与参数值用 = 连接,不同的参数用 & 分隔; 例如:' path?key=value&key2=value2 ',如果跳转的页面是tabBar页面则不能带参数 |
| success | Function | 否 | 接口调用成功的回调函数 |
| fail | Function | 否 | 接口调用失败的回调函数 |
| complete | Function | 否 | 接口调用完成的回调函数(成功、失败都会调用) |
uni.switchTab(OBJECT)——跳转到 tabBar页面,并关闭其他所有非 tabBar 页面
OBJECT参数说明
| 参数 | 类型 | 必填 | 说明 |
| url | String | 是 | 需要跳转的 tabBar 页面的路径(需在 pages.json 的 tabBar 字段定义的页面),路径后不能带参数 |
| success | Function | 否 | 接口调用成功的回调函数 |
| fail | Function | 否 | 接口调用失败的回调函数 |
| fail | Function | 否 | 接口调用完成的回调函数(成功、失败都会调用) |
uni.navigateBack(OBJECT)——关闭当前页面,返回上一级或多级页面,可通过 getCurrentPages( ) 获取当前页面栈,决定需要返回几层
OBJECT参数说明
| 参数 | 类型 | 必填 | 默认值 | 说明 | 平台差异说明 |
| delta | Number | 否 | 1 | 返回的页面数,如果delta大于现有页面数,则返回到首页 | |
| animationType | String | 否 | pop-out | 窗口关闭的动画效果 | 5+APP |
|
animationDuration |
Number | 否 | 300 | 窗口关闭动画的持续时间,单位为 ms | 5+APP |
Uni-app页面路由区分注意事项的更多相关文章
- uni app 零基础小白到项目实战-1
uni-app是一个使用vue.js开发跨平台应用的前端框架. 开发者通过编写vue.js代码,uni-app将其编译到Ios,android,微信小程序等多个平台,保证其正确并达到优秀体验. Uni ...
- 微信小程序之页面路由(九)
[未经允许,请勿以任何形式转载] 什么是路由? 我们通常理解的路由指分组数据包从源到目的地时,决定端到端路径的网络范围的进程: 借用上面的定义,我们可以理解小程序页面路由,根据路由规则(路径)从一个页 ...
- 微信小程序之页面路由
路由方式 简介 对于路由的触发方式以及页面生命周期函数如下: 路由方式 触发时机 路由前页面 路由后页面 初始化 小程序打开的第一个页面 onLoad, onSHow 打开新页面 调用 API w ...
- AngularJS ui-router刷新子页面路由
网上有各种刷新子页面路由的方法,但是不知道为什么放到我的页面就不行了,尴尬! 网上的方法有: <a href="#" ui-sref="app.toMenu&quo ...
- 教你判断一个APP页面是原生的还是H5页面 。(还没看)
来源:https://www.25xt.com/appdesign/11851.html 刚好是周末,无意之间学堂君在收集相关资料的时候,发现有部分童鞋在问<如何判断一个APP页面是不是H5页面 ...
- uni app中使用自定义图标库
项目中难免会用到自定义图标,那在uni app中应该怎么使用呢? 首先, 将图标目录放在static资源目录下: 在main.js中引入就可以全局使用了 import '@/static/icon-o ...
- 从微信小程序到鸿蒙js开发【11】——页面路由
目录: 1.router.push()&wx.navigateTo() 2.router.replace()&wx.redirectTo() 3.router.back()&w ...
- App页面显示优化
在开发移动端APP页面时,对各操作系统各种型号的手机进行适配是必须的.然鹅,上周在开发完一个落地页后,被测试给打了回来,其中列出了一个在我看来很小的问题:单击进入页面的时候,页面还没加载完的时候字体显 ...
- ios&h5混合开发项目仿app页面跳转优化
前言:本人原本是ios开发工程师,但由于现今H5的兴起,行内刮起了一阵混合开发的风气,趁着这股劲,我也学了前端开发,不说研究的多深,但也能胜任日常的开发工作.长话短说,现今的混合开发应该还处于摸索阶段 ...
随机推荐
- tensorflow2.0学习笔记
今天我们开始学习tensorflow2.0,用一种简单和循循渐进的方式,带领大家亲身体验深度学习.学习的目录如下图所示: 1.简单的神经网络学习过程 1.1张量生成 1.2常用函数 1.3鸢尾花数据读 ...
- HDU-3033 I love sneakers! 题解
题目大意 有 n 个物品,分成了 k 组,每个物品有体积和价值,把 n 个物品放到容量为 V 的背包中,保证每组至少放一件,求能获得的最大价值,如果不能实现,输出"Impossible&qu ...
- EAS:基于网络转换的神经网络结构搜索 | AAAI 2018
论文提出经济实惠且高效的神经网络结构搜索算法EAS,使用RL agent作为meta-controller,学习通过网络变换进行结构空间探索.从指定的网络开始,通过function-preservin ...
- EIGRP-14-EIGRP的命名模式
从IOS 15.0(1)M版本开始,工程师可以在路由器上使用命名模式(Named Mode)配置EIGRP进程.按照IPv4和IPv6,通过AS号来配置EIGRP进程的做法称为经典模式(Classic ...
- @loj - 3120@ 「CTS2019 | CTSC2019」珍珠
目录 @description@ @solution@ @accepted code@ @details@ @description@ 有 \(n\) 个在范围 \([1, D]\) 内的整数均匀随机 ...
- 大数据之Hudi + Kylin的准实时数仓实现
问题导读:1.数据库.数据仓库如何理解?2.数据湖有什么用途?解决什么问题?3.数据仓库的加载链路如何实现?4.Hudi新一代数据湖项目有什么优势? 在近期的 Apache Kylin × Apach ...
- SpringMVC框架搭建流程(完整详细版)
SpringMVC框架搭建流程 开发过程 1)配置DispatcherServlet前端控制器 2)开发处理具体业务逻辑的Handler(@Controller. @RequestMapping) 3 ...
- springboot mybatis plus多数据源轻松搞定 (上)
在开发中经常会遇到一个程序需要调用多个数据库的情况,总得来说分为下面的几种情况: 一个程序会调用不同结构的两个数据库. 读写分离,两个数据结构可能一样高,但是不同的操作针对不同的数据库. 混合情况,既 ...
- SFTP协议生成公共秘钥文件
[步骤] 1 ssh方式登录服务器 2 执行命令生成秘钥对 ssh-keygen -t rsa 然后给秘钥文件命名 3.查看当前目录的.ssh目录是否有authorized_keys文件 如果有则把新 ...
- 01MySQL内核分析-The Skeleton of the Server Code
摘要 这个官方文档一段对MySQL内核分析的一个向导.是对MySQL一条insert语句写入到MySQL数据库的分析. 但是,对于MySQL 5.7版本来说,基本上都是写入到innodb引擎.但也还是 ...