問題:
1)因為父組件有緩存等因素,子組件創建后沒有釋放,傳入參數無效
2)父組件的tab切換, 導致子組件一直存在, 沒有刷新
解決方法:
方案一: 只要讓子組件強制刷新就可以獲取到props傳遞過來的值了, 使用v-if的特性(銷毀和重建)可以強制刷新子組件
如果是刷新某個子組件,則可以通過v-if指令實現。我們知道,當v-if的值發生變化時,組件都會被重新渲染一遍。因此,利用v-if指令的特性,可以達到強制刷新組件的目的。
方案二: 使用this.$forceUpdate強制重新渲染
如果要在組件內部中進行強制刷新,則可以調用this.forceUpdate強制重新渲染組件,從而達到更新目的。