微信小程序跳转函数总结
微信小程序跳转函数总结
笔者在微信小程序前端的开发过程中,在不同的情况下遇到了需要使用不同的页面跳转逻辑的情况,以下是我对这些函数的使用场景的一个总结介绍。
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
})
文章参考
微信小程序跳转函数总结的更多相关文章
- 两百条微信小程序跳坑指南(不定时更新)
微信小程序联盟出品 跳坑textarea<二百二十三>不显示文本及textarea相关问题集合跳坑<二百一十三> background-image无法获取本地资源图片....跳 ...
- 微信小程序之回调函数
在微信小程序中众所周知在js里面得方法都是异步执行,我最近再做项目得时候也遇到了这个问题,再方法里面调用另一个方法里面的接口数据,第一次是调取不到的, 因为两个方法是同时开始执行得,所以怎么都取不到值 ...
- 微信小程序跳到h5,h5在跳回小程序
1.在微信小程序后台: 设置->开发设置->业务域名: 添加业务逻辑域名 2.在html5页面添加如下代码: <! -- html --> < script type=& ...
- 手把手教你玩微信小程序跳一跳
最近微信小程序火的半边天都红了,虽然不会写,但是至少也可以仿照网上大神开发外挂吧!下面手把手教妹纸们(汉纸们请自觉的眼观耳听)怎么愉快的在微信小游戏中获得高分. 废话不多说,咱们这就发车了!呸!咱们这 ...
- 微信小程序跳转以及跳转的坑
一.首先小程序的跳转方法有一下几种 js控制跳转 // 保留当前页面,跳转到应用内的某个页面 wx.navigateTo({ url: '../blueberry/blueberry' }); // ...
- 微信小程序跳转页面时参数过长导致参数丢失
问题描述: 微信小程序:跳转页面时传参,参数过长导致参数丢失 跳转到文章详情页时,使用的文章链接e.currentTarget.dataset.id过长导致参数丢失 handleClickArticl ...
- 微信小程序跳转web-vie时提示appId无法读取:Cannot read property 'appId' of undefined
微信小程序报web-view错无法读取appId:Cannot read property 'appId' of undefined 问题描述: 我以前一直如下写代码没报错也都是可以使用的,并且小程序 ...
- 微信小程序之使用函数防抖与函数节流
函数防抖和函数节流都是老生常谈的问题了.这两种方式都能优化 js 的性能.有些人可能会搞混两个的概念.所以,我以自己的理解,来解释这两个概念的含义.并且列举在小程序中这两个方法的使用. 函数防抖: 英 ...
- 微信小程序跳转小程序
<navigator target="miniProgram" open-type="navigate" app-id="{{BappId}}& ...
随机推荐
- Redis(四)Pub/Sub
发布与订阅 Pub/Sub模式应该非常熟悉,在现实应用中被广泛的使用.如:微博中关注某个号,这个号有发新博时,关注的都会收到:github上watch了某个项目,当有issue时,就会发邮件. Red ...
- python跳出多循环
参考https://www.php.cn/python-tutorials-88895.html 备注 Python的循环体自己就有else分支! 如果for循环没有执行break,则执行else,f ...
- docker的centos7安装与启动相关命令
Docker 的概念 Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止.Docker 帮助系统管理员和程序员在容 ...
- SwitchGame---MybatisPLus
//实体类package com.example.spring.entity; import cn.afterturn.easypoi.excel.annotation.Excel;import cn ...
- ubuntu16.04 共享文件夹之后 /mnt/hgfs目录下没有显示共享的文件夹
root权限执行: apt-get install open-vm-tools vmhgfs-fuse .host:/ /mnt/hgfs
- mongo find 时间条件过滤
db.order.find({"order_time":{"$gte": new Date("Tue Jan 01 2017 00:00:00 GMT ...
- CORE DUMP生成调试
之前我调试嵌入式linux程序,一般是借助ucontext库,在发生段错误时,直接将错误函数打印出来.有同事建议我使用core dump,于是我今天在嵌入式板卡尝试了core文件的生成,但是也是几经波 ...
- Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition (ST-GCN)
Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition 摘要 动态人体骨架模型带有进行动 ...
- 腾讯面试Android高级岗,居然被一个多线程基础面倒了?
前言 一个在深圳从事开发五年的老友一个月前从原公司辞职后,昨天去腾讯总部面试Android高级岗,一面的时候,自我介绍后,陆陆续续问了很多问题,有着五年的从业经验很多项目开发的技术问题都回答的很通顺, ...
- 2. 代理模式(C++)
1.介绍 代理模式:为其他对象提供一种代理以控制对这个对象的访问.这样实现了业务和核心功能分离. 在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口.在某些情况下,一个对象不适合或者不能 ...