路由与页面重定向

uni.navigateTo(OBJECT): 保留当前页面, 重置到应用内的某个页面

1.保留当前页面, 重置到应用内的某个页面, 使用uni.navigateBack可以返回到原页面

2.可以传递参数, 接受参数时, 使用钩子函数onLoad

参数 类型 默认值 说明
url String 需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 ‘path?key=value&key2=value2’,path为下一个页面的路径,下一个页面的onLoad函数可得到传递的参数
animationType String pop-in 窗口显示的动画效果
animationDuration Number 300 窗口动画持续时间, 单位为ms
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功, 失败都会执行)
//index.vue
toPath(){//点击函数
	跳转非tabBar页面,可以带参数跳转
	uni.navigateTo({
		url:"../one/one?name=zhangSan"
	})
}
//one.vue
onLoad(option){
	console.log(option)
}

uni.redirectTo:关闭当前页面, 跳转到应用内的某个页面

1.关闭当前页面, 跳转到应用内的某个页面

2.可以传递参数

参数 类型 默认值 说明
url String 需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 ‘path?key=value&key2=value2’,path为下一个页面的路径,下一个页面的onLoad函数可得到传递的参数
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功, 失败都会执行)

uni.reLaunch:关闭所有页面, 打开到应用内的某个页面

1.关闭所有页面, 打开到应用内的某个页面

2.可以传递参数

参数 类型 说明
url String 需要跳转的应用内页面路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 ‘path?key=value&key2=value2’,如果跳转的页面路径是 tabBar 页面则不能带参数
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功, 失败都会执行)

uni.switch Tab:跳转到tabBar页面, 并关闭其他所有非tabBar页面

跳转到tabBar页面, 并关闭其他所有非tabBar页面

不能传递参数

object参数说明

参数 类型 说明
url String 需要跳转的tabBar页面的路径(需要在pages.json的tabBar字段定义的页面),路径后不能带参数
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口条用结束的回调函数(调用成功, 失败都会执行)

uni.navigateBack:关闭当前页面, 返回上一页或多级页面

1.关闭当前页面, 返回上一页或多级页面

2.可通过getCurrentPages()获取当前的页面栈, 决定需要返回几层

参数 类型 默认值 说明
delta Number 1 返回的页面数, 如果delta大于现有页面数, 则返回到首页
animationType String pop-out 窗口关闭的动画效果
animationDuration Number 300 窗口关闭动画的持续时间, 单位为ms

注意:

  • navigateTo, redirectTo只能打开非tabBar页面
  • switchTab只能打开tabBar页面
  • reLaunch 可以打开任意页面
  • 页面底部的tabBar由页面决定, 即只要是定义为tabBar的页面, 底部都有tabBar
  • 不能在App.vue里边进行页面跳转
  • H5端页面刷新之后页面栈会消失, 此时navigateBack不能返回, 如果一定要返回可以使用history.back()导航到浏览器的其他历史记录