最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue緩存的keepalive頁面刷新數據的方法

 更新時間:2019年04月23日 14:47:24   作者:Summer05  
這篇文章主要介紹了vue緩存的keepalive頁面刷新數據的方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

用到這個的業(yè)務場景是這樣的:

a頁面點擊新建列表按鈕進入到新建的頁面b,填寫b頁面并點擊b頁面確認添加按鈕,把這些數據帶到a頁面,填充到列表(數組),可以添加多條,

點擊這條的時候進入到編輯頁面,確認修改之后,回退到a頁面,a頁面需要更新這條數據

實現這個功能的時候,由于是路由頁面之間的跳轉,首先想到的方案有幾個:1. 用sessionStorage本地存儲;2. 用路由參數帶過去;3. 用兄弟組件傳值

由于是添加完之后如果按回退是需要退出整個頁面,如果用路由跳轉,會出現回退到編輯頁面了,所以這個方法首先排除

用本地存儲的時候,如果不加回退也會吧之前存的歷史記錄給帶過來,所以最終選用了第三種方法

由于a頁面需要緩存,所以用到了路由頁面的緩存

router.js

{path: '/a',name: 'a',component: a,meta: {keepAlive: true}},

App.vue

 <template>
 <div id="app">
  <keep-alive>
    <router-view v-if="$routemetakeepAlive"></router-view>
  </keep-alive>
  <router-view v-if="!$routemetakeepAlive"></router-view>
 </div>
</template>

由于用到了keepalive, 所以頁面在再次加載的時候是不會觸發(fā)created而是會觸發(fā)activated的

所以接收數據,重置數據要寫到activated方法下

a頁面接收

更改用Vue.set()方法

調用方法:Vue.set( target, key, value )

target:要更改的數據源(可以是對象或者數組)

key:要更改的具體數據

value :重新賦的值

activated(){
    let that = this
    Self$on('detailShow',(data)=>{ // 接收
      if(!dataisEdit){ // 是新增還是編輯--這個是在跳轉的時候帶過去的--新增/編輯頁面也會根據這個顯示內容有所區(qū)別
        thataddParamspush(data)
        thataddParams = Arrayfrom(new Set(thataddParamsSubsidyInfos)) // 為避免重復去個重
      }else{
         // thataddParams[thateditIndex] = data // 剛開始想通過直接修改,后來發(fā)現不行,因為頁面是有緩存的,顯示的還是未修改之前的
        Vueset(thataddParams,thateditIndex,data) // 用set方法修改數據
      }
    })

  },

b頁面提交(新增/編輯)

submit(){
    if(!thisdetailValidate()){ // 這個是表單校驗,如果不通過不然提交
     return;
    }else{
     Self$emit('detailShow',thisaddParams) // 事件分發(fā)
     this$routerback();

    }
   }

vue 緩存的keepalive頁面刷新數據的話,這個主要還是用到了Vue.set( target, key, value )方法

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 代碼詳解Vuejs響應式原理

    代碼詳解Vuejs響應式原理

    這篇文章主要介紹了代碼詳解Vuejs響應式原理的基礎知識,有興趣的朋友們參考學習下吧。
    2017-12-12
  • vue3+vite多項目多模塊打包(基于vite-plugin-html插件)

    vue3+vite多項目多模塊打包(基于vite-plugin-html插件)

    這篇文章主要給大家介紹了關于vue3+vite基于vite-plugin-html插件實現多項目多模塊打包的相關資料,現在很多小伙伴都已經使用Vite+Vue3開發(fā)項目了,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-07-07
  • vue運行報錯cache-loader的解決步驟

    vue運行報錯cache-loader的解決步驟

    最近運行vue項目的時候報錯了,通過查找相關資料最終解決,下面這篇文章主要給大家介紹了關于vue運行報錯cache-loader的解決步驟,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-02-02
  • Vite打包項目后圖片丟失的簡單解決方法

    Vite打包項目后圖片丟失的簡單解決方法

    vue項目完成打包上線的時候很多人都會碰到靜態(tài)資源找不到的情況,下面這篇文章主要給大家介紹了關于Vite打包項目后圖片丟失的簡單解決方法,需要的朋友可以參考下
    2023-05-05
  • 使用vue-route 的 beforeEach 實現導航守衛(wèi)(路由跳轉前驗證登錄)功能

    使用vue-route 的 beforeEach 實現導航守衛(wèi)(路由跳轉前驗證登錄)功能

    在網站中普遍會遇到這樣的需求,路由跳轉前做一些驗證,比如登錄驗證(未登錄去登錄頁)。下面腳本之家小編給大家?guī)砹耸褂胿ue-route 的 beforeEach 實現導航守衛(wèi)(路由跳轉前驗證登錄)功能,感興趣的朋友一起看看吧
    2018-03-03
  • Vue登錄后添加動態(tài)路由并跳轉的實踐分享

    Vue登錄后添加動態(tài)路由并跳轉的實踐分享

    這篇文章講給大家詳細介紹一下Vue如何實現登錄后添加動態(tài)路由并跳轉,文章通過代碼示例介紹的非常詳細,對我們的學習或工作有一定的的幫助,需要的朋友可以參考下
    2023-07-07
  • vue兩次賦值頁面獲取不到的解決

    vue兩次賦值頁面獲取不到的解決

    這篇文章主要介紹了vue兩次賦值頁面獲取不到的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 在vue項目中如何獲取視頻的時長

    在vue項目中如何獲取視頻的時長

    這篇文章主要介紹了在vue項目中如何獲取視頻的時長,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue 中 命名視圖的用法實例詳解

    vue 中 命名視圖的用法實例詳解

    這篇文章主要介紹了vue 中 命名視圖的用法,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友參考下吧
    2019-08-08
  • el-table?fixed固定列導致錯位的解決方法介紹

    el-table?fixed固定列導致錯位的解決方法介紹

    ElementUI中el-table設置指定列固定不動,不受滾動條影響,下面這篇文章主要給大家介紹了關于el-table?fixed固定列導致錯位的解決方法,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-11-11

最新評論

蒙自县| 正宁县| 大埔县| 舟曲县| 馆陶县| 柞水县| 甘孜县| 大新县| 兰溪市| 永济市| 东城区| 堆龙德庆县| 泾川县| 化隆| 上虞市| 东平县| 沅江市| 清徐县| 榆社县| 临海市| 承德县| 夏河县| 双峰县| 东乌珠穆沁旗| 青海省| 左权县| 哈尔滨市| 江安县| 凌海市| 肃北| 宁武县| 卢氏县| 望都县| 武山县| 博白县| 长兴县| 新晃| 淄博市| 西乌珠穆沁旗| 平乐县| 阿拉尔市|