vue瀏覽器返回監(jiān)聽的具體步驟
前言
分享頁面時(shí),希望點(diǎn)擊瀏覽器回退按鈕,回到項(xiàng)目首頁,增加訪問量。
需要監(jiān)聽瀏覽器的回退按鈕,并阻止其默認(rèn)事件。
具體步驟如下:
1、掛載完成后,判斷瀏覽器是否支持popstate
mounted(){
if (window.history && window.history.pushState) {
history.pushState(null, null, document.URL);
window.addEventListener('popstate', this.goBack, false);
}
},
2、頁面銷毀時(shí),取消監(jiān)聽。否則其他vue路由頁面也會(huì)被監(jiān)聽
destroyed(){
window.removeEventListener('popstate', this.goBack, false);
},
3、將監(jiān)聽操作寫在methods里面,removeEventListener取消監(jiān)聽內(nèi)容必須跟開啟監(jiān)聽保持一致,所以函數(shù)拿到methods里面寫
methods:{
goBack(){
this.$router.replace({path: '/'});
//replace替換原路由,作用是避免回退死循環(huán)
}
}
附:popstate用來做什么的?
popstate的怎么用?
HTML5的新API擴(kuò)展了window.history,使歷史記錄點(diǎn)更加開放了??梢源鎯?chǔ)當(dāng)前歷史記錄點(diǎn)pushState、替換當(dāng)前歷史記錄點(diǎn)replaceState、監(jiān)聽歷史記錄點(diǎn)popstate。
pushState、replaceState兩者用法差不多。
使用方法:
history.pushState(data,title,url); //其中第一個(gè)參數(shù)data是給state的值;第二個(gè)參數(shù)title為頁面的標(biāo)題,但當(dāng)前所有瀏覽器都忽略這個(gè)參數(shù),傳個(gè)空字符串就好;第三個(gè)參數(shù)url是你想要去的鏈接;
replaceState用法類似,例如:history.replaceState("首頁","",location.href+ "#news");
總結(jié)
到此這篇關(guān)于vue瀏覽器返回監(jiān)聽的文章就介紹到這了,更多相關(guān)vue瀏覽器返回監(jiān)聽內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue.js 實(shí)現(xiàn)a標(biāo)簽href里添加參數(shù)
今天小編就為大家分享一篇vue.js 實(shí)現(xiàn)a標(biāo)簽href里添加參數(shù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11
element-ui中up-load組件實(shí)現(xiàn)圖片上傳回顯
在項(xiàng)目開發(fā)的時(shí)候很多人都會(huì)用到圖片上傳,本文主要介紹了element-ui中up-load組件實(shí)現(xiàn)圖片上傳回顯,具有一定的參考價(jià)值,感興趣的可以了解一下2024-01-01
vue 行為驗(yàn)證碼之滑動(dòng)驗(yàn)證AJ-Captcha使用詳解
這篇文章主要介紹了vue 行為驗(yàn)證碼之滑動(dòng)驗(yàn)證AJ-Captcha使用詳解,AJ-Captcha不需要npm安裝,只需要將組件 verifition復(fù)制到所使用的components目錄下,本文給大家詳細(xì)講解,需要的朋友可以參考下2023-05-05
Vue中響應(yīng)式系統(tǒng)實(shí)現(xiàn)原理圖文講解
Vue的響應(yīng)式實(shí)現(xiàn)是借助Object.defineProperty通過重寫getter和setter方法來進(jìn)行的數(shù)據(jù)劫持,Vue3通過Proxy代理攔截對(duì)象中任意屬性的變化,通過Reflect反射對(duì)源對(duì)象的屬性進(jìn)行操作,然后再在get里收集依賴在set里派發(fā)更新2023-03-03
vue+element搭建后臺(tái)小總結(jié) el-dropdown下拉功能
這篇文章主要為大家詳細(xì)介紹了vue+element搭建后臺(tái)小總結(jié),el-dropdown下拉功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09
淺談nuxtjs校驗(yàn)登錄中間件和混入(mixin)
這篇文章主要介紹了淺談nuxtjs校驗(yàn)登錄中間件和混入(mixin),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-11-11

