配置文件
1.项目下建文件夹commonFunction->physicBackListener.js
编辑代码
2.这个js文件内复制代码:
var webview = plus.webview.currentWebview();
plus.key.addEventListener('backbutton', function () {
webview.canBack(function (e) {
if(e.canBack){
webview.back(-1);//返回上一页
}else{
webview.close(); //关闭应用
}
})
});
})
全局引入
3.全局引入监听,main.js中:
import physicBackListener from '../commonFunction/physicBackListener'//物理返回键
Vue.prototype.physicBackListener=physicBackListener
如果打包后真机运行返回没有正常进行,或者逻辑有问题或者关闭后再返回还能打开是路由没配好
方法2:
第一步创建js文件夹子
在main里面引用
JS文本内容如下
//监听手机物理返回键的事件
document.addEventListener('plusready', function() {
var first = null;
plus.key.addEventListener('backbutton', function() {
if(!first) {
first = new Date().getTime(); //记录第一次按下回退键的时间
var urls = location.hash.split('/')[1]
//var Currenturls = location.hash.split('/')[0]
if (urls=="NewD"||urls=="StartScan") {
// alert(urls);
//history.go(-1);
plus.runtime.quit(); //那么就退出app
}else{
history.back(-1);
}
setTimeout(function() {
//0.5s中后清除,因为1s的间隔相对于太长,这样连续按两次就退出去,效果不好
first = null;
}, 500);
} else {
if(new Date().getTime() - first < 500) {
//如果两次按下的时间小于0.5s,同上
plus.runtime.quit(); //那么就退出app
}
}
});
})