news 2026/7/15 7:08:39

微信小程序监听返回操作,强制停留当前页面(右滑手势、安卓物理返回键)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
微信小程序监听返回操作,强制停留当前页面(右滑手势、安卓物理返回键)

效果如下:(上方的返回按钮是微信自带的,不是自定义的)

微信小程序监听返回操作

ps:

右滑手势、安卓物理返回键、左上角返回按键都能强制停留在当前页面

同样,如果页面上有弹窗,返回按钮点一次关闭弹窗,点第二次才是返回上个页面。(也可以做到点一次直接返回,具体写法按照业务来)。

核心组件:

page-container

https://developers.weixin.qq.com/miniprogram/dev/component/page-container.html

具体代码:

integral.wxml:

<view> 我是背景内容 <t-radio block="{{false}}" checked="{{isSelect}}" bind:change="handleRadioChange" label="单选标题" /> </view> <page-container show="{{pageContainer}}" overlay="{{false}}" bind:beforeleave="handleBeforeLeave"> </page-container> <t-toast id="t-toast" /> <t-dialog visible="{{showTextAndTitle}}" title="对话框标题" content="告知当前状态、信息和解决方法,等内容。描述文案尽可能控制在三行内" confirm-btn="{{ confirmBtn }}" bind:confirm="closeDialog" />

integral.js:

import Toast from 'tdesign-miniprogram/toast'; Page({ /** * 页面的初始数据 */ data: { pageContainer: true, isSelect: false }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { }, handleBeforeLeave() { if (!this.data.isSelect) { Toast({ context: this, selector: '#t-toast', message: '必须勾选才能返回', theme: 'warning', direction: 'column', }); this.setData({ pageContainer: true }) } }, handleRadioChange(e) { this.setData({ isSelect: !this.data.isSelect }, () => { // 手动触发监听逻辑 this.setData({ pageContainer: !this.data.isSelect }) }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 1:50:09

GPU 和 CPU 渲染谁更顶?新手必看的选型指南

在3D渲染、影视后期、游戏开发领域&#xff0c;“GPU与CPU渲染选哪个”是高频争议题。新手纠结硬件选型&#xff0c;老手权衡效率与质量&#xff0c;实则二者无绝对优劣&#xff0c;核心是适配场景——如同搬东西&#xff0c;CPU像法拉利&#xff08;快但装载量小&#xff09;&…

作者头像 李华
网站建设 2026/7/14 20:24:11

【六杆】六杆快速回归机制运动学和动力学分析附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 &#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室 &#x1f447; 关注我领取海量matlab电子书和数学建模资料 &#…

作者头像 李华
网站建设 2026/7/1 10:42:18

java: 找不到符号方法 getCode()

运行Spring Boot工程代码出现以下报错&#xff1a; 位置: 类型为com.xx.xx.exception.ErrorCode的变量 errorCode解决方法看截图中间那个路径框&#xff1a; ...lombok\unknown\lombok-unknown.jar这里的 unknown 说明 IDEA 根本没找到 Lombok 的 jar 包。 接下来&#xff0c; …

作者头像 李华
网站建设 2026/7/15 4:47:29

【双指针】盛水最多的容器

求解代码 public int maxArea(int[] height) {int left 0; // 左指针int right height.length - 1; // 右指针int ans 0; // 记录最大面积&#xff0c;初始为0&#xff08;面积非负&#xff09;// 双指针相向遍历&#xff0c;直到指针相遇while (left < right) {// 计算当…

作者头像 李华
网站建设 2026/7/1 15:01:19

【数组】分糖果问题

求解代码 public int candy(int[] arr) {if (arr null || arr.length 0) {return 0;}int n arr.length;int[] candyCount new int[n]; // 定义数组记录每个孩子最终应分得的糖果数int ans 0; // 统计分发糖果的总数量// 每个孩子至少分得1颗糖果for(int i0;i<arr.lengt…

作者头像 李华