1. 程式人生 > 程式設計 >vue中實現頁面重新整理以及區域性重新整理的方法

vue中實現頁面重新整理以及區域性重新整理的方法

目錄
  • 一.全頁面重新整理
  • 二、區域性重新整理
  • 三、應用場景
  • 總結

一.全頁面重新整理

1.修改 App.,程式碼如下:

<template>
  <div id="app">
    <router-view v-if="isRouterAlive" />
  </div>
</template>

<script>
export default {
  name: 'App',provide() { // 父元件中返回要傳給下級的資料
    return {
      reload: this.reljQAxcFToad
    }
  },data() {
    return {
      isRouterAlive: true
    }
  },methods: {
    reload() {
      this.isRouterAlive = false
      this.$nextTick(function() {
        this.isRouterAlive = true
      })
    }
  }
}
</script>

重點如下圖所示:

vue中實現頁面重新整理以及區域性重新整理的方法

2.到需要重新整理的頁面使用 inject 進行匯入並引用 reload:

vue中實現頁面重新整理以及區域性重新整理的方法

3.在需要進行呼叫的方法中呼叫 this.reload() 即可

vue中實現頁面重新整理以及區域性重新整理的方法

二、區域性重新整理

1.定義一個變數 isReloadData,並將該jQAxcFT變數繫結到需要重新整理的標籤上 :

vue中實現頁面重新整理以及區域性重新整理的方法

vue中實現頁面重新整理以及區域性重新整理的方法

2.定義區域性重新整理的方法 reloadPart:

vue中實現頁面重新整理以及區域性重新整理的方法

3.在需要執行區域性重新整理的方法中進行呼叫

vue中實現頁面重新整理以及區域性重新整理的方法

三、應用場景

  • 當在頁面中動態修改了某些資料,或者是 props 帶過來的資料,又或者是通過 funcation 動態設定的屬性,可能在修改之後不會展示最新的資料。
  • 當頁面資料發生了變化,但是頁面渲染會出現bug,例如 el-table 元件在資料發生變化後,會出現一個空白區域。

此時,全頁面重新整理或者區域性重新整理就會派上用場,下面截圖舉例本人遇到的第二種情況,已通過使用全頁面重新整理及區域性重新整理解決:

1.預設全選,頁面渲染正常:

vue中實現頁面重新整理以及區域性重新整理的方法

2.勾選掉一個展示列,頁面渲染正常:

vue中實現頁面重新整理以及區域性重新整理的方法

3.把勾選掉的展示列再勾選上,出現空白區域:

vue中實現頁面重新整理以及區域性重新整理的方法

此時,只需要在單選的方法中呼叫區域性重新整理的方法 this.reloadPart() 即可解決,同理,全選也是如此。

4.當每次新增展示列時,表格也會出現空白區域,此時我們只需要在新增記錄成功後呼叫全頁面重新整理的方法 this.reload() 即可。

總結

到此這篇關於vue中實現頁面重新整理以http://www.cppcns.com及區域性重新整理的文章就介紹到這了,更多相關vue頁面重新整理及區域性重新整理內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!