vue循环渲染子组件视图不更新问题
生活随笔
收集整理的這篇文章主要介紹了
vue循环渲染子组件视图不更新问题
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
最近在寫一個功能,使用v-for循環(huán)渲染子組件:代碼如下:
當(dāng)datas的數(shù)據(jù)發(fā)生改變時,按理子組件展現(xiàn)的數(shù)據(jù)也應(yīng)該重新渲染,不過在使用的時候并沒有達(dá)到這樣的效果,但是將循環(huán)渲染的子組件改成html標(biāo)簽的話數(shù)據(jù)是會重新渲染的,經(jīng)查閱發(fā)現(xiàn)當(dāng) Vue 正在更新使用?v-for?渲染的元素列表時,它默認(rèn)使用“就地更新”的策略。如果數(shù)據(jù)項(xiàng)的順序被改變,Vue 將不會移動 DOM 元素來匹配數(shù)據(jù)項(xiàng)的順序,而是就地更新每個元素,并且確保它們在每個索引位置正確渲染,這個默認(rèn)的模式是高效的,但是只適用于不依賴子組件狀態(tài)或臨時 DOM 狀態(tài) (例如:表單輸入值) 的列表渲染輸出。相關(guān)文獻(xiàn):https://cn.vuejs.org/v2/guide/list.html#%E7%BB%B4%E6%8A%A4%E7%8A%B6%E6%80%81
知道原因后在v-for的同時加上:key屬性就解決了此問題。
?
?
總結(jié)
以上是生活随笔為你收集整理的vue循环渲染子组件视图不更新问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue实现表格组件,带分页
- 下一篇: vue-cli css文件图片路径写法