微信小程序跳转函数总结

​ 笔者在微信小程序前端的开发过程中,在不同的情况下遇到了需要使用不同的页面跳转逻辑的情况,以下是我对这些函数的使用场景的一个总结介绍。

wx.navigateTo

这是最常用也是最基本的一个页面跳转函数,该函数跳转之前会先保留当前页面指针,然后跳转到目标页面。因此使用该跳转函数跳转到的页面也都可以回退到上一个页面。示例如下:

//保留当前页面,跳转到指定页面
wx.navigateTo({
url: 'page/des/des' // 目的页面url
})

wx.redictTo

上面提到,利用wx.navigateTo跳转到的页面均可以返回的上机页面,当我们不希望用户在跳转以后再次返回到当前页面,那么我们就需要在跳转前把当前的页面给关闭掉,wx.redictTo则实现了这个功能,通过该函数进行跳转到的目的页面,将无法返回到它的父级页面。(注意:如果目的页面父级页面是由它父级页面通过wx.navigateTo跳转而来的话,那么目的页面返回上一层的话,将会返回到其父级页面的父级页面。)代码示例如下:

// 关闭当前页面,跳转到目的页面
wx.redirectTo({
url: 'page/des/des' //目的页面url
})

wx.reLanch

wx.redictTo只能关闭当前层的页面,如果我们需要在跳转时关闭其所有父级的页面话,就需要从父级到当前,每一级的跳转都用wx.redictTo。而且如果我们只希望在当前层关闭所有页面,那么仅仅使用wx.redictTo就会很不方便,wx.reLanch及实现了关闭所有页面以后的跳转功能,代码示例如下:

// 关闭所有页面,跳转到目的页面
wx.reLanch({
url: 'page/home/home' //目的页面url
})

wx.navigateBack

该函数为页面回退函数,我们在实际使用的过程中不仅仅是需要跳转到新的页面,当用户完成一些操作以后我们可能需要自动返回到上级页面来增加用户的体验。navigateBack与navigateTo相对应,即利用navigateTo保存的页面指针来实现跳转操作。具体示例如下:

//假设我们从页面A 跳转到页面B 在跳转到页面C.

wx.navigateTo({
url: 'page/A/A  // 页面 A
})
wx.navigateTo({
url: 'page/B/B'  // 页面 B
})
wx.navigateTo({
url: 'page/C/C'  // 页面 C
})
//接下来进行回退
//delta 返回的页面数,如果 delta 大于现有页面数,则返回到首页。
//如果想回退到页面A,则delta 为 3 即返回三个页面
wx.navigateBack({
delta: 2
})

文章参考

微信小程序跳转函数总结的更多相关文章

  1. 两百条微信小程序跳坑指南(不定时更新)

    微信小程序联盟出品 跳坑textarea<二百二十三>不显示文本及textarea相关问题集合跳坑<二百一十三> background-image无法获取本地资源图片....跳 ...

  2. 微信小程序之回调函数

    在微信小程序中众所周知在js里面得方法都是异步执行,我最近再做项目得时候也遇到了这个问题,再方法里面调用另一个方法里面的接口数据,第一次是调取不到的, 因为两个方法是同时开始执行得,所以怎么都取不到值 ...

  3. 微信小程序跳到h5,h5在跳回小程序

    1.在微信小程序后台: 设置->开发设置->业务域名: 添加业务逻辑域名 2.在html5页面添加如下代码: <! -- html --> < script type=& ...

  4. 手把手教你玩微信小程序跳一跳

    最近微信小程序火的半边天都红了,虽然不会写,但是至少也可以仿照网上大神开发外挂吧!下面手把手教妹纸们(汉纸们请自觉的眼观耳听)怎么愉快的在微信小游戏中获得高分. 废话不多说,咱们这就发车了!呸!咱们这 ...

  5. 微信小程序跳转以及跳转的坑

    一.首先小程序的跳转方法有一下几种 js控制跳转 // 保留当前页面,跳转到应用内的某个页面 wx.navigateTo({ url: '../blueberry/blueberry' }); // ...

  6. 微信小程序跳转页面时参数过长导致参数丢失

    问题描述: 微信小程序:跳转页面时传参,参数过长导致参数丢失 跳转到文章详情页时,使用的文章链接e.currentTarget.dataset.id过长导致参数丢失 handleClickArticl ...

  7. 微信小程序跳转web-vie时提示appId无法读取:Cannot read property 'appId' of undefined

    微信小程序报web-view错无法读取appId:Cannot read property 'appId' of undefined 问题描述: 我以前一直如下写代码没报错也都是可以使用的,并且小程序 ...

  8. 微信小程序之使用函数防抖与函数节流

    函数防抖和函数节流都是老生常谈的问题了.这两种方式都能优化 js 的性能.有些人可能会搞混两个的概念.所以,我以自己的理解,来解释这两个概念的含义.并且列举在小程序中这两个方法的使用. 函数防抖: 英 ...

  9. 微信小程序跳转小程序

    <navigator target="miniProgram" open-type="navigate" app-id="{{BappId}}& ...

随机推荐

  1. Xamarin vs React Native vs Ionic vs NativeScript: Cross-platform Mobile Frameworks Comparison

    CONTENTS Reading time: 14 minutes Cross-platform mobile development has long been a viable alternati ...

  2. [转] vue父组件触发子组件事件

    1. 父组件中获取子组件方法 $children 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <template>     < ...

  3. [個人紀錄] postgre dump出table 再用psql還原

    --dump tablepg_dump --host #server --port 5432 --username #username --format plain --ignore-version ...

  4. SharpImage图像特效和合成类库介绍

    SharpImage是用于.NET(C#.VB)的专业图像特效以及图像合成类库.借助它,您可以快速实现Photoshop滤镜效果以及图层合成. 1.内置50+种图像特效滤镜.(如亮度.对比度.负片.图 ...

  5. Node.js自动本地重启服务器

    node.js在本地项目中,更新 了代码 是不会自动刷新 的,要重启才能生效,每次更改代码又手动重启这样很麻烦. 可以安装 个supervisor.全局安装supervisor npm install ...

  6. Qt之Q_PROPERTY宏理解

    在初学Qt的过程中,时不时地要通过F2快捷键来查看QT类的定义,发现类定义中有许多Q_PROPERTY的东西,比如最常用的QWidget的类定义: Qt中的Q_PROPERTY宏在Qt中是很常用的,那 ...

  7. 【转】LockSupport深入浅出

    原文:https://www.cnblogs.com/qingquanzi/p/8228422.html 本篇是<自己动手写把"锁">系列技术铺垫的最后一个知识点.本篇 ...

  8. Android 9.0网络权限适配

    在做Android开发时,使用华为的p20和平板(均为Android 9.0)测试时,发现不能使用WIFI网络,一番郁闷纠结查找后 直接上方法: 在res文件夹下创建xml文件夹,在xml里面创建文件 ...

  9. 深入理解Java封装、继承、多态

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10830957.html 一:封装 将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法 ...

  10. 06、自动挂载+超级守护进程+时间同步+tcpwrapper+软硬链接+日志管理

    autofs  自动挂载服务   把下面这两条命令做成自动挂载 172.16.2.35:/share/soft /nfs/soft 172.16.2.35:/share/iso  /nfs/iso . ...