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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章