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

vue刷新頁(yè)面后params參數(shù)丟失的原因和解決方法

 更新時(shí)間:2023年12月14日 10:22:57   作者:UserGuan  
這篇文章主要給大家介紹了vue刷新頁(yè)面后params參數(shù)丟失的原因和解決方法,文中通過(guò)代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下

頁(yè)面跳轉(zhuǎn)($router)方式

方式一(刷新頁(yè)面參數(shù)會(huì)丟失)

此方法不會(huì)在瀏覽器 url 地址欄中顯示傳遞的參數(shù)

this.$router.push({ name: 'a', params: { name: '張三', age: '18' }}) // 頁(yè)面跳轉(zhuǎn)
 
this.$route.params // 參數(shù)接收

方式二(刷新頁(yè)面參數(shù)不會(huì)丟失)

此方法會(huì)在瀏覽器 url 地址欄中顯示傳遞的參數(shù)(數(shù)據(jù)會(huì)暴露在外面),即:'a?name=張三&age=18'

this.$router.push({ path: 'a', query: { name: '張三', age: '18' }}) // 頁(yè)面跳轉(zhuǎn)
 
this.$route.query // 參數(shù)接收

刷新頁(yè)面后 params 參數(shù)丟失

發(fā)送數(shù)據(jù)的頁(yè)面A

this.$router.push({ name: 'A', params: { name: '張三', age: '18' }})

接收數(shù)據(jù)的頁(yè)面B

this.curObj = this.$route.params

當(dāng)進(jìn)入 B 頁(yè)面后,按 F5 刷新頁(yè)面 B 頁(yè)面接收的參數(shù)會(huì)丟失。

解決辦法

使用 localStorage 或 sessionStorage 瀏覽器自帶的 mini 數(shù)據(jù)庫(kù)(即本地存儲(chǔ))

存儲(chǔ)在 localStorage 里的數(shù)據(jù)如果不是主動(dòng)去清除的話(huà),就算瀏覽器關(guān)閉了,下次打開(kāi)瀏覽器數(shù)據(jù)還是會(huì)存在,是一個(gè)長(zhǎng)期的存在。

存儲(chǔ)在 sessionStorage 里的數(shù)據(jù)只要關(guān)閉瀏覽器就會(huì)自動(dòng)清除,但是刷新網(wǎng)頁(yè)不會(huì)清除,是一個(gè)臨時(shí)的存在。

可以利用 vue 里瀏覽器刷新不會(huì)觸發(fā) beforeDestory 生命周期函數(shù)和數(shù)據(jù)儲(chǔ)存本地這兩個(gè)方法來(lái)補(bǔ)全 params 刷新丟失數(shù)據(jù)的短板。

發(fā)送數(shù)據(jù)的頁(yè)面A

this.$router.push({ name: 'A', params: { name: '張三', age: '18' }})

接收數(shù)據(jù)的頁(yè)面B

mounted() {
  let routeParam = this.$route.params
  if (Object.entries(routeParam).length === 0) {
    routeParam = JSON.parse(sessionStorage.getItem('storageObj')) // 從本地存儲(chǔ)中獲取數(shù)據(jù)
  } else {
    sessionStorage.setItem('storageObj', JSON.stringify(routeParam)) // 將數(shù)據(jù)儲(chǔ)存在本地存儲(chǔ)里面
  }
  this.curObj = routeParam
},
beforeDestroy() {
  sessionStorage.removeItem('storageObj') // 將數(shù)據(jù)從本地存儲(chǔ)刪掉
},

沒(méi)有用 localStorage 是因?yàn)槿绻脩?hù)跳轉(zhuǎn)到頁(yè)面 B 后,直接關(guān)閉瀏覽器,再打開(kāi)瀏覽器輸入網(wǎng)址,就能從本地存儲(chǔ)找到該數(shù)據(jù),但 sessionStorage 關(guān)閉瀏覽器,數(shù)據(jù)就消失了。不會(huì)出現(xiàn) localStorage 的問(wèn)題。

以上就是vue刷新頁(yè)面后params參數(shù)丟失的原因和解決方法的詳細(xì)內(nèi)容,更多關(guān)于vue刷新頁(yè)面后params丟失的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 簡(jiǎn)單談一談Vue中render函數(shù)

    簡(jiǎn)單談一談Vue中render函數(shù)

    vue中的render函數(shù),它返回的是一個(gè)虛擬節(jié)點(diǎn)vnode,也就是我們要渲染的節(jié)點(diǎn),下面這篇文章主要給大家介紹了關(guān)于Vue中render函數(shù)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • vue.js整合mint-ui里的輪播圖實(shí)例代碼

    vue.js整合mint-ui里的輪播圖實(shí)例代碼

    這篇文章主要介紹了vue.js整合mint-ui里的輪播圖的方法,首先我們需要初始化vue項(xiàng)目,然后安裝mint-ui。具體內(nèi)容詳情大家通過(guò)學(xué)習(xí)
    2017-12-12
  • Vue2中使用Monaco?Editor的教程詳解

    Vue2中使用Monaco?Editor的教程詳解

    Monaco-editor,一個(gè)vs?code?編輯器,這篇文章主要為大家詳細(xì)介紹了如何在Vue2中使用Monaco?Editor,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-01-01
  • 詳細(xì)聊聊Vue生命周期的那些事

    詳細(xì)聊聊Vue生命周期的那些事

    這篇文章主要給大家介紹了關(guān)于Vue生命周期的那些事,在使用vue開(kāi)發(fā)過(guò)程中經(jīng)常會(huì)接觸到生命周期的問(wèn)題,但對(duì)于每個(gè)鉤子函數(shù)都做了什么,應(yīng)用場(chǎng)景比較模糊,希望通過(guò)這次梳理讓自己清楚一些,需要的朋友可以參考下
    2021-09-09
  • Vue3?watchEffect的使用教程和相關(guān)概念

    Vue3?watchEffect的使用教程和相關(guān)概念

    Vue?3?引入了?Composition?API,其中?watchEffect?是一個(gè)非常強(qiáng)大的工具,用于響應(yīng)式地追蹤依賴(lài)項(xiàng)的變化,本文將詳細(xì)介紹?watchEffect?的使用方法和相關(guān)概念,文中有詳細(xì)的代碼供大家參考,需要的朋友可以參考下
    2024-08-08
  • Vue純前端實(shí)現(xiàn)導(dǎo)出Excel并修改樣式

    Vue純前端實(shí)現(xiàn)導(dǎo)出Excel并修改樣式

    這篇文章主要為大家詳細(xì)介紹了Vue如何利用xlsx-style庫(kù)實(shí)現(xiàn)導(dǎo)出Excel并修改樣式的功能,文中的示例代碼講解詳細(xì),有需要的可以參考下
    2024-01-01
  • vue axios登錄請(qǐng)求攔截器

    vue axios登錄請(qǐng)求攔截器

    這篇文章主要介紹了vue axios登錄請(qǐng)求攔截器,判斷是否登錄超時(shí),或?qū)φ?qǐng)求結(jié)果做一個(gè)統(tǒng)一處理的教程詳解,需要的朋友可以參考下
    2018-04-04
  • vue+echarts繪制省份地圖并添加自定義標(biāo)注方式

    vue+echarts繪制省份地圖并添加自定義標(biāo)注方式

    這篇文章主要介紹了vue+echarts繪制省份地圖并添加自定義標(biāo)注方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • 淺談sass在vue注意的地方

    淺談sass在vue注意的地方

    下面小編就為大家?guī)?lái)一篇淺談sass在vue注意的地方。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • Vue之ElementUI Form表單校驗(yàn)

    Vue之ElementUI Form表單校驗(yàn)

    這篇文章主要為大家詳細(xì)介紹了Vue之ElementUI Form表單校驗(yàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08

最新評(píng)論