uniapp页面跳转的几种方法和区别

Posted 铁锤妹妹@

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了uniapp页面跳转的几种方法和区别相关的知识,希望对你有一定的参考价值。

在讲它们的差异之前,我们先引入一个概念:页面栈

1. 栈是一种连续储存的数据结构,具有先进后出的性质。
2. 页面栈就是用来储存页面的栈,也有栈的特性。uniapp是通过页面栈来管理所有的页面,我们可以将页面栈理解为一个放页面的容器。每次跳转页面,都会从这个容器中添加或者删除页面。

1. 保留当前页面,可跳转到非 tabBar 页面,使用uni.navigateBack可以返回到原页面(可传参)

uni.navigateTo(
	url: 'test?id=1&name=uniapp'
);

2. 关闭当前页面,跳转到应用内的某个页面。不可打开tabbar页面 (可传参)

uni.redirectTo(
	url: 'test?id=1'
);

3. 关闭所有页面,打开到应用内的某个页面。可打开tabbar页面(可传参)

//页面会全部出栈,只留下新的页面
uni.reLaunch(
	url: 'test?id=1'
);

4. 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面。(不可传参)

uni.switchTab(
	url: '/pages/index/index'
);

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

uni.navigateBack(
	delta: 2 //返回的页面数
);

总结:

navigateTo, redirectTo 只能打开非 Tab 页面,可传参。
switchTab 只能打开 Tab 页面,不可传参。
reLaunch 可以打开任意页面,可传参。

可参考
uni-app页面跳转的不同方式及差异
uniapp中跳转页面的方法及差别:

以上是关于uniapp页面跳转的几种方法和区别的主要内容,如果未能解决你的问题,请参考以下文章

uniapp页面跳转的几种方式

设置http跳转https的几种方法

JS实现页面跳转的几种方法

页面跳转的几种方法

小程序跳转的几种方法及问题

HTML5页面跳转的几种方法