前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微信小程序页面跳转方法和携带参数详解「建议收藏」

微信小程序页面跳转方法和携带参数详解「建议收藏」

作者头像
Java架构师必看
发布2022-02-03 15:50:15
3.5K0
发布2022-02-03 15:50:15
举报
文章被收录于专栏:Java架构师必看Java架构师必看

(1)标签跳转

open-type的属性值对应api里的用法即wx.的用法

代码语言:javascript
复制
1 <navigator url="/page/navigate/navigate?title=navigate" open-type="switchTab" hover-class="navigator-hover">跳转到新页面</navigator>

(2)wx.navigateTo 方法跳转

此方法能够从跳转的页面会回到当前页面

代码语言:javascript
复制
此代码由Java架构师必看网-架构君整理
1 wx.navigateTo({
2 url: 'pages/a/a'
3 })

(3)wx.switchTab?方法跳转只适用于调转到设置了tabbar的页面

代码语言:javascript
复制
1 wx.switchTab({
2 url: 'pages/index/index'
3 })

(4)wx.redirectTo 方法跳转会关闭当前页面跳转到某个页面

代码语言:javascript
复制
此代码由Java架构师必看网-架构君整理
1 wx.redirectTo({
2 url: 'pages/a/a'
3 })

(5)wx.reLaunch?方法跳转会关闭所有打开的页面,跳转到某个页面

代码语言:javascript
复制
1 wx.reLaunch({
2 url: 'pages/a/a'
3 })

(6)wx.navigateBack?方法返回到父页面 ,可以多级返回

代码语言:javascript
复制
1 // 此处是A页面
2 wx.navigateTo({
3 url: 'B?id=1'
4 })
代码语言:javascript
复制
1 // 此处是B页面
2 wx.navigateTo({
3 url: 'C?id=1'
4 })
代码语言:javascript
复制
1  
2 // 在C页面内 navigateBack,将返回A页面
3 wx.navigateBack({
4 delta: 2 //跳转的级数
5 })

2.页面跳转携带参数(以传递两个参数为例)

携带参数的跳转分两个方面,一方面是本页面传递参数,另一方是跳转页面接收参数,我就拿前两种方式作为例子

1.标签跳转携带参数

a页面

代码语言:javascript
复制
1 //a.wxml 页面传递
2 <navigator url="/pages/b/b?id=1&tu='a.jpg' " hover-class="none">
3 跳转到b
4 <navigator>

b页面

代码语言:javascript
复制
1 //b.js 页面接收参数
2 onLoad: function (options) {       //options用于接收上个页面传递过来的参数
3 var that = this;
4 that.setData({                             //this.setData的方法用于把传递过来的id转化成小程序模板语言
5 b_id: options.id,     //id是a页面传递过来的名称,a_id是保存在本页面的全局变量   {{b_id}}方法使用
6 b_tu: options.tu,
7 })
8 }

2.wx.navigateTo跳转携带参数

a页面

代码语言:javascript
复制
1 //a.wxml 绑定跳转函数
2 <view  bindtap='tapLogin' >
3 立即登录
4 </view>
代码语言:javascript
复制
 1 //a.js 跳转函数
 2 tapLogin:function() {
 3 //这一步是为了把模板语言转化成js语言
 4 var id=that.data.id; 
 5 var tu = that.data.id
 6  
 7 wx.navigateTo({
 8 url: '/pages/b/b?id=' + 1 + "&tu=" + 'a.jpg'
 9 });
10  
11 },

b页面

代码语言:javascript
复制
1 //b.js 页面接收参数
2  onLoad: function (options) {       //options用于接收上个页面传递过来的参数
3  var that = this;
4  that.setData({                             //this.setData的方法用于把传递过来的id转化成小程序模板语言
5 b_id: options.id,     //id是a页面传递过来的名称,a_id是保存在本页面的全局变量   {{b_id}}方法使用
6  b_tu: options.tu,
7  })
8  }
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com