Vue中使用keep-alive組件可以緩存組件的狀態,減少組件重新渲染時所需要的時間和資源,優化應用性能。下面介紹在Vue中如何使用keep-alive組件。
在要緩存狀態的組件外層添加keep-alive標簽即可:
<template>
<keep-alive>
<your-component></your-component>
</keep-alive>
</template>
當<your-component>
組件被緩存起來后,再次掛載該組件時,會觸發activated
的生命周期鉤子函數。你可以利用該鉤子函數來重新請求數據或執行其他操作:
<script>
export default {
activated() {
// 重新請求數據或執行其他操作
this.getData()
},
methods: {
getData() {
// ...
}
}
}
</script>
而當<your-component>
組件被緩存起來后,再次卸載該組件時,會觸發deactivated
的生命周期鉤子函數:
<script>
export default {
deactivated() {
// 組件被緩存起來時會被調用
}
}
</script>
需要注意的是,在<keep-alive>
標簽中只能有一個子組件,如果有多個子組件需要緩存,可以使用v-for
循環渲染,如下:
<template>
<keep-alive>
<your-component v-for="(item, index) in list" :key="index"></your-component>
</keep-alive>
</template>
在以上代碼中,v-for
循環渲染your-component
組件,并為每個組件添加了一個唯一標識key
,避免在緩存組件時出現重復組件的情況。
上一篇html 圖片去邊框代碼
下一篇c cgi返回json