10 微信小程序路由跳转
一、四种跳转方式
除了tabBar这种底部跳转的方法,我们还有路由跳转,以下四种方式: 1. wx.switchTab() :跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 url: tabBar 页面的路径(需在 app.json 的 tabBar 字段定义的页面),路径后不能带参数 2.wx.reLaunch() :关闭所有页面,打开到应用内的任意页面,可带参 url: 'path?key=value&key2=value2' 3.wx.redirectTo() :关闭当前页面,跳转到应用内非 tabBar 页面路径,可带参(会执行onUnload生命周期方法) url : 'path?key=value&key2=value2' 4.wx.navigateTo():保留当前页面,跳转到应用内非 tabBar 页面路径(会执行onHide生命周期方法,生成顶部返回按钮,并且页面堆栈+1) url: 'path?key=value&key2=value2'

路由参数:

四种跳转使用:

1.1wx.switchTab(Object object)
示例代码:
1) 先做两个tabBar页面
"tabBar": {
"backgroundColor":"#123",
"color": "#FFFFFF",
"list": [{
"pagePath": "pages/test/test",
"text": "text",
"iconPath": "images/icon1.png",
"selectedIconPath": "images/icon1-active.png"
},
{
"pagePath": "pages/test2/test2",
"text": "text2",
"iconPath": "images/icon2.png",
"selectedIconPath": "images/icon2-active.png"
}]
},
主文件 app.js
2) test.js 往index页面跳转 /表示根目录
wx.switchTab({
url: '/index'
})
1.2wx.reLaunch(Object object)
wx.redirectTo(Object object) / wx.navigateTo(Object object) 和这个代码一样,注意跳转页面的不同就好了
示例代码
test1.js
wx.reLaunch({
url: 'test2?id=1'
})
test2.js 页面加载会触发
Page({
onLoad(option) {
console.log(option.query)
}
})
1.5wx.redirectTo与wx.navigateTo的区别
1.利用wx.navigateTo跳转到下一个页面的时候(这时候会执行onHide方法),下一个页面会有顶部返回按钮
2.如果不想有返回按钮,可以用wx.redirectTo进行页面跳转(会执行onUnload生命周期,关闭当前页面跳转,没有页面可以返回)
3.调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈(保留页面去跳转,页面计数会增加,返回页面时用),而 redirectTo 方法则不会(和2相似)
1.6 wx.navigateBack(Object object)
使用 wx.navigateBack(),关闭当前页面,返回上一页面或多级页面,最多十层。
可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层
参数:

使用:

示例代码:
// 此处是A页面js,跳到B
wx.navigateTo({
url: 'B?id=1'
})
// 此处是B页面js,跳到C
wx.navigateTo({
url: 'C?id=1'
})
// 在C页面js内 navigateBack,将返回2级到A页面
wx.navigateBack({
delta: 2
})
// 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会
二、在前端跳转方法 见官方文档

10 微信小程序路由跳转的更多相关文章
- 微信小程序路由跳转
微信小程序路由跳转 1.wx.switchTab(Object object) 这里的tabBar是底下的导航栏指定的页面, 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 参数 O ...
- 微信小程序 路由跳转 异步请求 存储数据,微信登录接口
1小程序路由跳转 wx.switchTab(Object object) 这里的tabBar是底下的导航栏指定的页面 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 tabBar l ...
- 微信小程序路由跳转(navigateTo,redirectTo ,switchTab ,reLaunch )
navigateTo, redirectTo 只能打开非 tabBar 页面. switchTab 只能打开 tabBar 页面. reLaunch 可以打开任意页面. 通过redirect重定向的页 ...
- 微信小程序-页面跳转与参数传递
QQ讨论群:785071190 微信小程序页面跳转方式有很多种,可以像HTML中a标签一样添加标签进行跳转,也可以通过js中方法进行跳转. navigator标签跳转 <view class=& ...
- 用python一步一步教你玩微信小程序【跳一跳】
12月28日,微信上线了小游戏「跳一跳」,瞬间成了全民游戏,如何牢牢占据排行榜的第一位呢?用Python帮助你,Python真的无所不能. 作为技术出身的我们,是不是想用技术改变排名呢? 注意:本文适 ...
- 微信小程序页面跳转方法总结
微信小程序页面跳转目前有以下方法(不全面的欢迎补充): 1. 利用小程序提供的 API 跳转: // 保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面.// 注 ...
- 微信小程序如何跳转到另一个小程序
微信小程序如何跳转到另一个小程序,要注意:在app.json文件里也要配置 navigateToMiniProgramAppIdList,如下图: "navigateToMiniProgra ...
- 利用python实现微信小程序游戏跳一跳详细教程
利用python实现微信小程序游戏跳一跳详细教程 1 先安装python 然后再安装pip <a href="http://newmiracle.cn/wp-content/uploa ...
- 一个C#程序员学习微信小程序路由的笔记
路由大家应该都知道,在微信小程序也是有的,毕竟它是单页面应用程序.在WeChat中有五种跳转方式,分别是wx.switchTab.wx.reLaunch.wx.redirectTo.wx.naviga ...
随机推荐
- Scala——的并行集合
当出现Kafka单个分区数据量很大,但每个分区的数据量很平均的情况时,我们往往采用下面两种方案增加并行度: l 增加Kafka分区数量 l 对拉取过来的数据执行repartition 但是针对这种 ...
- scala_spark实践1
/** * scala模型的main(args:Array[String])是业务执行入口 * org.apache.spark.{SparkConf, SparkContext} * val spa ...
- 谨慎使用keySet:对于HashMap的2种遍历方式比较
HashMap存储的是键值对,所以一般情况下其遍历同List及Set应该有所不同. 但java巧妙的将HashMap的键值对作为一个整体对象(java.util.Map.Entry)进行处理,这优化了 ...
- Xray安装与使用
0×00 Xray简介 xray是从长亭洞鉴核心引擎中提取出的社区版漏洞扫描神器,支持主动.被动多种扫描方式,自备盲打平台.可以灵活定义 POC,功能丰富,调用简单,支持 Windows / macO ...
- AJ学IOS 之微博项目实战(6)导航控制器NavigationController 的滑动回退功能实现
AJ分享,必须精品 一:效果 第二篇里面写了怎样自定义navigation实现自定义的导航控制器左右按钮样式,但是当我们自己实现后,系统自带的向右边滑动来实现回退的功能就不能用了. 这里主要实现滑动回 ...
- 使用Jmeter测试java请求
1.性能测试过程中,有时候开发想对JAVA代码进行性能测试,Jmeter是支持对Java请求进行性能测试,但是需要自己开发.打包好要测试的代码,就能在Java请求中对该java方法进行性能测试2.本文 ...
- 数据类型、运算符、Scanner的使用
一.常见的基本数据类型 数值型 byte(最小,2字节) short(4字节) int (默认 8字节) long(16字节) 浮点型 f ...
- Navicat自动备份数据库
@ 目录 Navicat自动备份数据库 备份与还原 修改备份位置 MySQL:5.7 Navicat:11 Windows10 重要数据库的定时备份是非常重要的,使用Navicat可以非常方便快捷地自 ...
- [转载]深度理解Session
什么是session session的官方定义是:Session:在计算机中,尤其是在网络应用中,称为“会话控制”.Session 对象存储特定用户会话所需的属性及配置信息. 说白了session就是 ...
- SpringCloud(七)超时、重试
一.Ribbon(单独配置) 可以通过ribbon.xx来进行全局配置.也可以通过服务名.ribbon.xx来对指定服务配置 全局配置: ribbon: ConnectTimeout: 3000 #连 ...