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

詳解vue頁面狀態(tài)持久化詳解

 更新時(shí)間:2021年12月05日 16:04:16   作者:Wonder*  
這篇文章主要為大家介紹了vue頁面狀態(tài)持久化,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

需求:左樹右表。組織樹選中某一節(jié)點(diǎn)后,進(jìn)入詳情頁面,再返回時(shí)需要保持選中。其他查詢條件也需要保持狀態(tài)。

思路:用vuex結(jié)合localStorage緩存數(shù)據(jù)。點(diǎn)擊樹節(jié)點(diǎn)或查詢按鈕時(shí),將數(shù)據(jù)保存在vuex中,同時(shí)存在localStorage中;頁面回退時(shí),將存在localStorage中的數(shù)據(jù)放到vuex中,在頁面代碼中判斷vuex中是否有我們存的數(shù)據(jù),有則直接用,沒有則默認(rèn)初始數(shù)據(jù)。當(dāng)頁面導(dǎo)航路由跳轉(zhuǎn)時(shí)再清除緩存的頁面數(shù)據(jù)。

代碼:

點(diǎn)擊某樹節(jié)點(diǎn)時(shí),存下id至vuex中。通過dispatch觸發(fā)action

this.$store.dispatch('SetDeviceFaultId', data.id)

?在vuex的actions中,通過commit?觸發(fā) mutations 中的方法

RemoveDeviceFaultId({ commit }) {    //后面清除數(shù)據(jù)時(shí)會(huì)用到
    commit('REMOVE_DEVICEFAULTID');
},
SetDeviceManageId({ commit }, id) {  
    commit('SET_DEVICEMANAGEID', id);
},

mutations:修改數(shù)據(jù)

REMOVE_DEVICEFAULTID: (state) => {
      state.devicFaultId = null     
      Storage.remove('devicFaultId');
},
SET_DEVICEMANAGEID: (state, deviceManageId) => {
      state.deviceManageId = deviceManageId
      Storage.set('deviceManageId', deviceManageId);
}

state:頁面剛創(chuàng)建時(shí)從localStorage中拿緩存的數(shù)據(jù)

devicFaultId: Storage.get('devicFaultId'),

進(jìn)入某詳情頁,回退時(shí)

this.params.organizeId = this.$store.state.tree.devicFaultId ? this.$store.state.tree.devicFaultId : res.data[0].id;

點(diǎn)擊其他路由時(shí),記得清除緩存的數(shù)據(jù)

this.$store.dispatch('RemoveDeviceFaultId')

補(bǔ)充:

storage.js代碼

?在vuex中引入后就可以通過Storage.set使用啦

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • 淺析Vue中method與computed的區(qū)別

    淺析Vue中method與computed的區(qū)別

    在new Vue的配置參數(shù)中的computed和methods都可以處理大量的邏輯代碼,但是什么時(shí)候用哪個(gè)屬性,要好好區(qū)分一下才能做到正確的運(yùn)用vue。這篇文章主要介紹了Vue中method與computed的區(qū)別,需要的朋友可以參考下
    2018-03-03
  • element中Steps步驟條和Tabs標(biāo)簽頁關(guān)聯(lián)的解決

    element中Steps步驟條和Tabs標(biāo)簽頁關(guān)聯(lián)的解決

    這篇文章主要介紹了element中Steps步驟條和Tabs標(biāo)簽頁關(guān)聯(lián)的解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • vue 實(shí)現(xiàn)通過手機(jī)發(fā)送短信驗(yàn)證碼注冊(cè)功能

    vue 實(shí)現(xiàn)通過手機(jī)發(fā)送短信驗(yàn)證碼注冊(cè)功能

    這篇文章主要介紹了vue 實(shí)現(xiàn)通過手機(jī)發(fā)送短信驗(yàn)證碼注冊(cè)功能的相關(guān)資料,需要的朋友可以參考下
    2018-04-04
  • 如何使用Vue+Element做個(gè)個(gè)人中心

    如何使用Vue+Element做個(gè)個(gè)人中心

    我們?cè)谧隽擞脩舻卿浐?就會(huì)讓用戶跳轉(zhuǎn)到個(gè)人中心,下面這篇文章主要給大家介紹了關(guān)于如何使用Vue+Element做個(gè)個(gè)人中心的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • VUE使用docxtemplater導(dǎo)出word文檔實(shí)例(帶圖片)

    VUE使用docxtemplater導(dǎo)出word文檔實(shí)例(帶圖片)

    docxtemplate支持的功能很多,語法包含變量替換、條件判斷、循環(huán)、列表循環(huán)、表格循環(huán)等,下面這篇文章主要給大家介紹了關(guān)于VUE使用docxtemplater導(dǎo)出word功能(帶圖片)的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • vue實(shí)現(xiàn)計(jì)算器封裝

    vue實(shí)現(xiàn)計(jì)算器封裝

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)計(jì)算器的封裝,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Vue滾動(dòng)頁面到指定位置的實(shí)現(xiàn)及避坑

    Vue滾動(dòng)頁面到指定位置的實(shí)現(xiàn)及避坑

    這篇文章主要介紹了Vue滾動(dòng)頁面到指定位置的實(shí)現(xiàn)及避坑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue中elementUI表單循環(huán)驗(yàn)證方式

    vue中elementUI表單循環(huán)驗(yàn)證方式

    這篇文章主要介紹了vue中elementUI表單循環(huán)驗(yàn)證方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • vue實(shí)現(xiàn)拖拽進(jìn)度條

    vue實(shí)現(xiàn)拖拽進(jìn)度條

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)拖拽進(jìn)度條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • vue項(xiàng)目開發(fā)中setTimeout等定時(shí)器的管理問題

    vue項(xiàng)目開發(fā)中setTimeout等定時(shí)器的管理問題

    這篇文章主要介紹了vue項(xiàng)目開發(fā)中setTimeout等定時(shí)器的管理問題,需要的朋友可以參考下
    2018-09-09

最新評(píng)論