欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue嵌套iframe時(shí)$router.go(-1)后退bug的原因解析

 更新時(shí)間:2023年09月21日 10:57:39   作者:533_  
這篇文章主要介紹了Vue嵌套iframe,$router.go(-1)后退bug的問題原因及解決方法,本文給大家分享問題原因所在及解決方案,需要的朋友可以參考下吧

Vue嵌套iframe,$router.go(-1)后退bug

問題:

更改iframe中src值后導(dǎo)致的路由跳轉(zhuǎn)混亂,多次更改iframe的src屬性后,調(diào)用router.go(-1),不能實(shí)現(xiàn)路由后退上一級

原因:

還是在于通過ifream.src賦值,因?yàn)橛蛳嗤?,還是會向window.history中插入一條歷史記錄

之前的代碼

<iframe ref="iframe" :src="url" scrolling="auto" frameborder="0" width="100%" height="100%"></iframe>
<script>
  export default {
    methods:{
      setIframeSrc(){
        this.url = '新url'
      }
    }
  }  
</script>

解決辦法

去掉 :src="url" ,增加 this.$refs.iframe.contentWindow.location.replace

<iframe ref="iframe" scrolling="auto" frameborder="0" width="100%" height="100%"></iframe>
<script>
  export default {
    methods:{
      setIframeSrc(){
      	this.url = '新url'
        this.$refs.iframe.contentWindow.location.replace(this.url)
      }
    }
  }  
</script>

參考資料:

嵌套iframe,$router.go(-1)后退bug

擴(kuò)展:vue-router 內(nèi)嵌 iframe,導(dǎo)致this.$router.go(-1)返回上一頁異常

問題描述:

在使用vue-router跳轉(zhuǎn)過來的頁面中內(nèi)嵌了一個iframe,通過選擇不同項(xiàng)替換iframe的src,但是在使用this.$router.go(-1)返回之前的頁面時(shí)發(fā)現(xiàn)頁面刷新,點(diǎn)擊多次才能返回之前的頁面

原因:

瀏覽器機(jī)制的原因,在 iframe 導(dǎo)航變化后手動點(diǎn)擊瀏覽器的后退按鈕也依然只是后退 iframe 中的導(dǎo)航。類似window.history.go

解決方法:

iframe 里面的鏈接用 location.replace 跳轉(zhuǎn),這樣就只會有一個歷史記錄了

<iframe ref="iframe"></iframe>
this.$refs.iframe.contentWindow.location.replace(src)

到此這篇關(guān)于Vue嵌套iframe,$router.go(-1)后退bug的文章就介紹到這了,更多相關(guān)vue嵌套iframe內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論