亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

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

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

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

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

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

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

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

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

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

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

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

this.curObj = this.$route.params

當進入 B 頁面后,按 F5 刷新頁面 B 頁面接收的參數(shù)會丟失。

解決辦法

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

存儲在 localStorage 里的數(shù)據(jù)如果不是主動去清除的話,就算瀏覽器關(guān)閉了,下次打開瀏覽器數(shù)據(jù)還是會存在,是一個長期的存在。

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

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

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

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

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

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

沒有用 localStorage 是因為如果用戶跳轉(zhuǎn)到頁面 B 后,直接關(guān)閉瀏覽器,再打開瀏覽器輸入網(wǎng)址,就能從本地存儲找到該數(shù)據(jù),但 sessionStorage 關(guān)閉瀏覽器,數(shù)據(jù)就消失了。不會出現(xiàn) localStorage 的問題。

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

相關(guān)文章

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

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

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

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

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

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

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

    詳細聊聊Vue生命周期的那些事

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

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

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

    Vue純前端實現(xiàn)導出Excel并修改樣式

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

    vue axios登錄請求攔截器

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

    vue+echarts繪制省份地圖并添加自定義標注方式

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

    淺談sass在vue注意的地方

    下面小編就為大家?guī)硪黄獪\談sass在vue注意的地方。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Vue之ElementUI Form表單校驗

    Vue之ElementUI Form表單校驗

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

最新評論