vue 強制組件重新渲染(重置)的兩種方案
數(shù)據(jù)通過異步操作后,對之前剛加載的數(shù)據(jù)進行變更后,發(fā)現(xiàn)數(shù)據(jù)不能生效
方案一
當數(shù)據(jù)變更后,通過watch 監(jiān)聽,先去銷毀當前的組件,然后再重現(xiàn)渲染。使用 v-if 可以解決這個問題
<template>
<third-comp v-if="reFresh"/>
</template>
<script>
export default{
data(){
return {
reFresh:true,
menuTree:[]
}
},
watch:{
menuTree(){
this.reFresh= false
this.$nextTick(()=>{
this.reFresh = true
})
}
}
}
</script>
這種方式雖然可以實現(xiàn),太不優(yōu)雅
方案二
通過vue key 實現(xiàn),原理官方文檔。所以當key 值變更時,會自動的重新渲染。
<template>
<third-comp :key="menuKey"/>
</template>
<script>
export default{
data(){
return {
menuKey:1
}
},
watch:{
menuTree(){
++this.menuKey
}
}
}
</script>
以上這篇vue 強制組件重新渲染(重置)的兩種方案就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue項目開發(fā)實現(xiàn)父組件與子組件數(shù)據(jù)間的雙向綁定原理及適用場景
在 Vue.js 中,實現(xiàn)父組件與子組件數(shù)據(jù)之間的雙向綁定,可以通過以下幾種方式,下面我將介紹幾種常見的方法,并解釋它們的實現(xiàn)原理和適用場景,感興趣的朋友跟隨小編一起看看吧2024-12-12
vue報錯Failed to execute 'appendChild&apos
這篇文章主要為大家介紹了vue報錯Failed to execute 'appendChild' on 'Node'解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-11-11
如何用VUE和Canvas實現(xiàn)雷霆戰(zhàn)機打字類小游戲
這篇文章主要介紹了如何用VUE和Canvas實現(xiàn)雷霆戰(zhàn)機打字類小游戲,麻雀雖小,五臟俱全,對游戲感興趣的同學,可以參考下,研究里面的原理和實現(xiàn)方法2021-04-04
vue中使用echarts繪制雙Y軸圖表時刻度沒有對齊的兩種解決方法(最新方案)
這篇文章主要介紹了vue中使用echarts繪制雙Y軸圖表時,刻度沒有對齊的兩種解決方法,主要原因是因為刻度在顯示時,分割段數(shù)不一樣,導致左右的刻度線不一致,不能重合在一起,下面給大家分享解決方法,需要的朋友可以參考下2024-03-03
Vue?3?表單與后端數(shù)據(jù)交互之查詢并回顯數(shù)據(jù)步驟流程
本文給大家介紹Vue3表單與后端數(shù)據(jù)交互之查詢并回顯數(shù)據(jù)步驟流程,結(jié)合實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧2024-12-12

