uniapp监听手机左键退出弹框拦截最佳办法

  •  当前方法可以直接放在main.js文件中,本文代码中使用原生子窗体做拦截。
// #ifdef APP-PLUS //条件编译,在app-plus下编译
 plus.key.addEventListener('backbutton', function () {
	 var _bool = true;
	 plus.nativeUI.toast = (function(str){//因为uniapp内部方法 在第一次监听手机左键的时候 会调起原生弹窗 第二次会在间隔时间短的时候 调起退出方法
											//所以必须加quit方法,不然在第一次弹窗拦截之后,快速关闭窗口,重新点击退出,会直接退出弹窗.						
	 	if(str == '再按一次退出应用'){
	 		_bool = false;
	 		const subNVue = uni.getSubNVueById('_popup');
	 		subNVue.show('zoom-out', 300); 
	 		return true; 
	 		}
	 		else{  
	 			uni.showToast({  
	 			    title:'',  
	 			    icon:'none',  
	 			    })  
	 			    }  
	 			});
	 plus.runtime.quit = function(e){//获取退出
		 if(_bool){
			 const subNVue = uni.getSubNVueById('_popup');
			 subNVue.show('zoom-out', 300);
		 } 		
	 return _bool;
	 }
	
    }, false);
	
// #endif

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值