当前位置: 首页 > 知识库问答 >
问题:

javascript - 关于微信小程序 怎样处理用户手势返回的问题?

苏涛
2024-04-04

image.png

image.png

上面第一张图是提交订单页面,下面是确认支付页面,在微信小程序中,客户在进入确认支付页面,如果这时候操作手机屏幕的手势返回 就又会回到提交订单页面,但是我们想让用户在确认支付页面 不管通过什么方式返回,都要回到订单详情页面,左边导航的点击返回,已经做了处理,但是却控制不了用户的手势返回,包括通过监测路由栈变化,也监听不了,请问这种情况如何处理呢?

共有2个答案

狄阳华
2024-04-04

进入支付页面的时候使用 wx.redirectTo 而不是 wx.navigateTo。这样就可以直接返回到购物车页面了。


Edit

如果说是想要在用户提交订单之后进入到支付页面,拦截用户的右滑返回,然后跳转到订单详情页面这样是不行的。只能在返回到提交订单页面后做跳转逻辑。

阎德宇
2024-04-04

在微信小程序中,处理用户手势返回的问题通常可以通过覆盖页面的 onBackPress 方法来实现。onBackPress 方法会在用户点击 Android 设备的物理返回键或执行 iOS 的手势返回时被调用。

然而,你提到的问题在于,即使你试图通过监听路由栈变化来处理返回逻辑,也无法控制用户的手势返回。在这种情况下,一个可能的解决方案是在确认支付页面添加一个自定义的返回按钮,并在该按钮的点击事件处理器中实现你想要的返回逻辑。

例如,你可以在确认支付页面的 WXML 文件中添加一个返回按钮,如下所示:

<button bindtap="goBack">返回</button>

然后,在确认支付页面的 JS 文件中,实现 goBack 方法,使用 wx.navigateBack 函数并指定 delta 值来回到订单详情页面,如下所示:

Page({  goBack: function() {    wx.navigateBack({      delta: 2 // 回到订单详情页面    });  }});

在这个例子中,delta 值为 2,意味着小程序将回退两个页面,从确认支付页面回到订单详情页面。你可以根据你的小程序页面结构来调整这个值。

这样,即使用户执行手势返回,也会触发自定义的返回按钮的点击事件,从而实现你想要的返回逻辑。需要注意的是,这种方法需要用户主动点击返回按钮,而不是直接执行手势返回,但考虑到你已经无法直接控制手势返回,这可能是一个可行的替代方案。

 类似资料:
  • 怎么样在微信小程序地图上手动画线、面? 微信小程序提供的API貌似只支持线、面的回显展示,不能够手动在地图上画线、面 期望结果:

  • 我们有h5版的页面,为了快速实现小程序,我们用小程序的webview嵌套了h5,但是有些功能需要借助小程序的能力,文档上写的可以wx.miniProgram.postMessage. 但是需要引入微信的jssdk,还要有下面的配置 我们只是一个通用的h5页面,并没有公众号,没有appid这些东西,请问这种情况可以用jssdk吗?

  • 本文向大家介绍微信小程序实现手势滑动效果,包括了微信小程序实现手势滑动效果的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了微信小程序实现手势滑动的具体代码,供大家参考,具体内容如下 wxml: index.js: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • https://mp.weixin.qq.com/wxopen/plugindevdoc?appid=wxee969de8... 上面链接中的完成页面的使用, 点“完成”返回的是__plugin__/wxee969de81bba9a45/pages/complete这样的路径,这明显是插件的路径,这里不应该是我自己的路径吗?有遇到过的吗?

  • 这段一直收到不管是微信还是支付宝小程序关于授权这块的整改要求,就是不需要授权的地方不能强制用户授权,只要在特定的需要用户授权时才授权,也不能直接一打开小程序就进行授权,但是我的授权逻辑是以页面为单位的,所以我这要修改时怎么来修改呀?不能以接口为单元吧?而且这种授权只是我前端的问题,还是需要后端配合? 在【首页-物价查询/来院导航/医院简介】页面,弹窗获取非敏感信息(昵称、头像)以及(获取你的医保移

  • 后端传了html 代码给我,我在小程序里用了rich-text去做渲染,但是渲染不出来,好像这个只能渲染出一些简单的部分html代码,无法对整个html页面代码进行代码,