av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

vue監聽瀏覽器原生返回按鈕,進行路由轉跳操作

瀏覽:64日期:2022-11-26 10:19:17

今天測試給我報了個bug說點擊瀏覽器返回頁數據顯示的不對,我查了半天原因:需要監聽瀏覽器的回退按鈕,并阻止其默認事件。

具體操作方法如下:

1、掛載完成后,判斷瀏覽器是否支持popstate

mounted(){ if (window.history && window.history.pushState) { history.pushState(null, null, document.URL); window.addEventListener(’popstate’, this.cancel, false); } },

2、頁面銷毀時,取消監聽。否則其他vue路由頁面也會被監聽

destroyed(){ window.removeEventListener(’popstate’, this.cancel, false); }

3、將監聽操作寫在methods里面,removeEventListener取消監聽內容必須跟開啟監聽保持一致,所以函數拿到methods里面寫

cancel: function() { if(this.orderId){ this.$router.push({ name:'orderList', params: {id:this.orderId},}); }else{ this.$router.go(-1); } },

補充知識:vue-router組件內導航守衛判斷返回按鈕

組件內導航守衛會出現無法攔截$router.go(-1)或者物理返回按鈕,在攔截函數外包裹setTimeout即可。具體原因還未發現。

setTimeout(() => { this.$confirm(’編輯的頁面布局尚未保存,確定離開?’, ’提示’, { confirmButtonText: ’確定’, cancelButtonText: ’取消’, type: ’warning’ }).then(() => { next() return }).catch(() => { this.$message({ type: ’info’, message: ’已取消’ }) next(false) return }) }, 500)

以上這篇vue監聽瀏覽器原生返回按鈕,進行路由轉跳操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
主站蜘蛛池模板: 久久精品中文字幕 | 国产视频一区在线 | 亚欧在线观看 | 免费黄网站在线观看 | 国产资源视频 | 手机在线播放av | 国产伦精品一区二区三区照片 | 天堂免费av | 丨国产丨调教丨91丨 | 69成人网| 成人深夜视频 | 狠狠操综合 | 欧美xxxx网站 | 亚洲二区视频 | 精品久久久久久久久久 | 成年人午夜视频 | www久久久| 成人午夜毛片 | 国产精品区二区三区日本 | 免费在线看a | av福利在线观看 | 日韩一级免费视频 | av老司机在线| av基地网 | 久操福利 | 日韩高清精品免费观看 | 女子spa高潮呻吟抽搐 | 国产性生活 | 成人在线不卡 | 9.1成人看片免费版 国产草草影院 | 欧美123区| 午夜视频免费看 | 精品伊人久久 | 欧美综合激情 | 日韩一区二区在线视频 | 色激情网 | 婷婷第四色| 日本免费不卡视频 | 日韩欧美国产综合 | 免费看大片a | 99香蕉视频 |