vue+cordova 物理返回键

2019-02-14  本文已影响0人  晴空万里_d3c2

vue插件  vue-awesome-mui 

没试过

cordova plugin add cordova-plugin-backbutton 

cordova插件cordova-plugin-backbutton 

关于此插件中对于vue这种单页面开发  gohome和goback是没有区别的

所以  在需要双击退出的页面添加<div id='exit'></>

判断有无此id元素,有 则判断连续点击的时间,无则直接用router.back(-1)返回

有点莫名其妙和好笑的是,因为我的一个页面是用window.open打开的,所以router.back并不适用,至少在网页测试上是这样的,,但是打包在app上router.back竟然直接返回了

还有在mian.js中直接用this是无法获取到vue的实例的,所以

完整代码如下:

在 vue的main.js中  添加修改如下代码

document.addEventListener('deviceready', function() {

let testVueInstance=new Vue({

el:'#app',

    router,

    store,

    template:'<App/>',

    components: { App }

})

var time;

  document.addEventListener("backbutton", function(){

var that =this;

    var pp=new Date() -time

var x=document.getElementById('exit')

if(x){

if(pp<3000){

navigator.Backbutton.goHome()

}else{

time=new Date()

}

}else{

// navigator.Backbutton.goBack()

      testVueInstance.$router.back(-1)

}

}, false);

}, false);

上一篇下一篇

猜你喜欢

热点阅读