以前使用的是純F7,這個項目加了Vue進去,但碰到了一個問題,就是這樣監聽不到安卓物理鍵的返回,它是點擊返回,直接推出程序,這個坑有點深,查了不少資料也問了不少人,最后在網上看到了別人的寫的,自己也改了一點,最后可以返回,但是不能直接退出,坑還是沒有爬完:上代碼:
var XBack = {}; (function(XBack) { XBack.STATE = 'x - back'; XBack.element; XBack.onPopState = function(event) { event.state === XBack.STATE && XBack.fire(); XBack.record(XBack.STATE); //初始化事件時,push一下 }; XBack.record = function(state) { history.pushState(state, null, location.href); }; XBack.fire = function() { var event = document.createEvent('Events'); event.initEvent(XBack.STATE, false, false); XBack.element.dispatchEvent(event); }; XBack.listen = function(listener) { XBack.element.addEventListener(XBack.STATE, listener, false); }; XBack.init = function() { XBack.element = document.createElement('span'); window.addEventListener('popstate', XBack.onPopState); XBack.record(XBack.STATE); }; })(XBack); // 引入這段js文件 XBack.init();
mounted() {
var $_this = this;
XBack.listen(function() {
$_this.$router.back()
});
},
這段代碼放在入口頁就可以了