Uniapp(小程序)页面回退时触发提示

本文介绍如何在Uniapp(小程序)中使用wx.enableAlertBeforeUnload()和wx.disableAlertBeforeUnload()方法,实现页面回退时的用户确认对话框功能,以避免意外丢失用户输入的数据。

Uniapp(小程序)页面回退时触发提示

当页面存在需要用户填写的表单时,我们需要考虑是否存在用户不小心回退页面的问题。这将导致用户输入的数据都被销毁,用户的体验感极差。

在小程序中,我们无需使用复杂的方法对页面的回退进行监听,小程序中提供了 wx.enableAlertBeforeUnload() 方法对页面回退进行监听,以下便是其具体的用法。

官方文档:wx.enableAlertBeforeUnload(Object object)

wx.enableAlertBeforeUnload(Object object)

功能描述

开启小程序页面返回询问对话框。

弹窗条件

  • 当用户在小程序内非首页页面/最底层页
  • 官方导航栏上的的返回
  • 全屏模式下自绘返回键
  • android 系统 back 键时

注意事项

  • 手势滑动返回时不做拦截
  • 在任何场景下,此功能都不应拦住用户退出小程序的行为

参数:Object object

属性类型默认值必填说明
messagestring询问对话框内容
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

代码:

wx.disableAlertBeforeUnload({
    message: '对话框内的内容',
    success:function(){},
    fail:function(){},
    complete:function(){},
})

wx.disableAlertBeforeUnload(Object object)

当设置了 wx.enableAlertBeforeUnload() 后,我们无论在何种情况下回退都将触发监听。这就意味着,即便我们成功提交表单后,也还是会触发监听。为了避免提交时被监听,我们就需要在提交完成回退前取消监听。
小程序为我们提供了 wx.disableAlertBeforeUnload() 方法来取消监听。

功能描述

关闭小程序页面返回询问对话框。

参数:Object object

属性类型默认值必填说明
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值