頁面快取
前端頁面快取基於 vue
的 keep-alive
機制,開始後,用於快取頁面元件,避免重複渲染,同時,也用於快取頁面資料,避免重複請求。
快取
系統內部已經封裝好如何快取,只需要按照以下方式即可將指定頁面快取:
- 路由裡的
meta.cache
屬性設定為true
,靜態路由需要手動設定,動態路由可在選單管理頁面修改此屬性即可。 - 在頁面裡定義
defineOptions({ name: '路由的name屬性' })
- 頁面要保持
單一根節點
,如果多個根節點,又開啟快取的情況下,會造成白屏狀態。單一根節點寫法:
vue
<script setup lang="ts">
</script>
<template>
<!-- 只有一個根節點 -->
<div>
<div>頁面內容</div>
</div>
</template>
不快取
不快取很簡單,不要設定 meta.cache
屬性為 true
或者不定義此屬性就可以了,其他兩項不需要處理。
如果設定了此屬性,但又不想快取,頁面裡不要定義 defineOptions({ name: 'xxx'})
也可以。