首页 > 编程语言 >微信小程序页面跳转方法总结

微信小程序页面跳转方法总结

时间:2023-08-03 13:01:42浏览次数:41  
标签:微信 API 跳转 home wx page 页面

在我们日常的开发过程中,跳转页面是每个项目中必有的需求,包括监听返回按钮,回到指定页面,在小程序中页面跳转即页面路由

页面栈

框架以栈的形式维护了当前的所有页面。当发生路由切换的时候,页面栈的表现如下:

微信小程序页面跳转方法总结_多级

getCurrentPages()函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。
注意:不要尝试修改页面栈,会导致路由以及页面状态错误。

路由方式

在小程序中,路由跳转大概两种方式,一种可以利用API跳转,另外一种就是页面组件了,下面详细看下,看看每种跳转方式区别

  1. 利用API跳转
// 保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面。
 // 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,但是 redirectTo 
 wx.navigateTo({
   url: 'page/home/home?user_id=1'
 })
  
  
 // 关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层。
  
 wx.navigateTo({
   url: 'page/home/home?user_id=1'  // 页面 A
 })
 wx.navigateTo({
   url: 'page/detail/detail?product_id=2'  // 页面 B
 })
 // 跳转到页面 A
 wx.navigateBack({
   delta: 2  //返回指定页面
 })
  
  
 // 关闭当前页面,跳转到应用内的某个页面。
 wx.redirectTo({
   url: 'page/home/home?user_id=111'
 })
  
  
 // 跳转到tabBar页面(在app.json中注册过的tabBar页面),同时关闭其他非tabBar页面。
 wx.switchTab({
   url: 'page/index/index'
 })
  
  
 // 关闭所有页面,打开到应用内的某个页面。
 wx.reLanch({
   url: 'page/home/home?user_id=111'
 })

2.页面组件跳转

// redirect 对应 API 中的 wx.redirect 方法
 <navigator url="/page/redirect/redirect?title=redirect" open-type="redirect">在当前页打开</navigator>
  
 // navigator 组件默认的 open-type 为 navigate 
 <navigator url="/page/navigate/navigate?title=navigate">跳转到新页面</navigator>
  
 // switchTab 对应 API 中的 wx.switchTab 方法
 <navigator url="/page/index/index" open-type="switchTab">切换 Tab</navigator>
  
 // reLanch 对应 API 中的 wx.reLanch 方法
 <navigator url="/page/redirect/redirect?title=redirect" open-type="redirect">//关闭所有页面,打开到应用内的某个页面
  
 // navigateBack 对应 API 中的 wx.navigateBack 方法
 <navigator url="/page/index/index" open-type="navigateBack">关闭当前页面,返回上一级页面或多级页面</navigator>

不全的欢迎补充

标签:微信,API,跳转,home,wx,page,页面
From: https://blog.51cto.com/u_14682436/6948266

相关文章

  • 微信小程序中获取用户信息、用户手机号
    1、小程序中获取用户信息、用户手机号等,属于敏感操作,需要用户主动触发,即:<buttonopen-type="getPhoneNumber"onGetPhoneNumber="handleGetPhoneNumberButtonClick">一键登录</button>上面的伪代码是获取用户手机号的操作,点击按钮会第一时间触发半屏弹窗让用户授权获取手......
  • 微信小程序:富文本编辑器组件
    参考文章:微信小程序之实现封装一个富文本编辑器Editor的完整流程【附demo源码】欢迎点赞收藏地址:https://blog.csdn.net/XH_jing/article/details/115509316demo源码: https://github.com/jxh1997/Editor ,所以源代码均在Github上,下载即可使用。我个人在demo源码的基础上稍......
  • jQuery跨页面锚点点位
    functiongetparams(){varparams=location.search.substring(1);varArrparams=params.split('&');if(Arrparams.length==2){varmao=Arrparams[1].split('=')[1]console.log(mao)if(mao=="c1&quo......
  • 客服如何通过微信接收消息通知-唯一客服文档中心
    当我们在自己网站上嵌入对接了客服代码,我们想要通过微信接收访客的消息提醒通知,可以通过扫描客服后台的微信二维码,即时收消息通知提醒。我们网站地址:gofly.v1kf.com客服后台后台主页面板,就展示了一个微信二维码,扫码关注公众号,就能将客服账号与微信公众号进行绑定,通过微信公众号......
  • (转)WEB页面导出为Word文档后分页&横向打印的方法
    项目中用到了横向打印,今天重新更新了这个脚本.<html><HEAD><title>WEB页面导出为Word文档后分页&横向打印的方法</title></HEAD><SCRIPTLANGUAGE="javascript">......
  • 微信小程序学习笔记(完结)
    本笔记是小程序学习笔记,主要记录小程序の基础知识说明本笔记为观看慕课网微信小程序入门与实战-全新版、尚硅谷2021版微信小程序开发(零基础小程序开发入门到精通)这两个教学视频、并参照官方的微信开放文档记录整理而成两个教学视频主要就是是面向初学者......
  • 运维平台 WGCLOUD 主机列表页面怎么添加主机
    WGCLOUD页面没有添加主机的按钮或入口因为只要你部署并运行了agent,主机列表就会发现这个agent主机,不用手动添加主机......
  • 小程序中web-view网页中打开或返回小程序页面
    小程序中web-view网页中使用JSSDK提供的接口打开或返回小程序页面1、引入JSSDK文件2、判断是否在小程序环境let_this=this;wx.miniProgram.getEnv(function(res){if(res.miniprogram){_this.miniprogram=true;}})3、根据是否小程序环境,执行操作if(th......
  • 微信小程序6 常用标签之 input,基础样式
    inputinput标签不做任何设置的时候,就是个输入框,需要注意的是默认没有样式,这跟html不同。<input></input> 我输入了内容,但是可以看到没有边框样式。 type属性1.text,就是默认的type属性值,输入框;2.password,密码框;3.number,只能输入数字,但是要在移动端才能看......
  • 微信支付回调
    在微信支付的回调中,常用参数列举如下:$resultArray['out_trade_no']:商户订单号。$resultArray['transaction_id']:订单号。$resultArray['amount']['total']:订单金额。$resultArray['mch_id']:商户号,即微信支付分配的商户号。$resultArray['appid']:公众账号ID,......