uniapp 强制刷新DOM/强制更新指令:this.$forceUpdate();
生活随笔
收集整理的這篇文章主要介紹了
uniapp 强制刷新DOM/强制更新指令:this.$forceUpdate();
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前言
略
數組和對象更改后視圖不刷新
當遇期望DOM一刷新,但其卻未刷新怎么辦?
比如:在uniapp刷新DOM過程中,你修改了data中的屬性。此時uniapp無法感知到屬性已經發生變化了,因此,期待的DOM刷新未發生。
我的數據是:
return {list: [{id: 1, ..., height:1},{id: 2, ..., height:1},], }當我更新height時,期望的DOM刷新未發生。
想知道為什么的,參考這里:Vue中數組和對象更改后視圖不刷新的問題
或者通過總結了解一下:數據的改變必須能夠觸發set方法,否則無法響應數據變化。
解決辦法1:this.$forceUpdate();
/*修改屬性*/ this.list[0].height = 100; /*緊接著跟一條強制更新指令*/ this.$forceUpdate();解決辦法2:
/*修改屬性*/ this.list[0].height = 100; /*緊接著,通過重新賦值屬性,觸發該屬性的setter方法*/ this.list= Object.assign({}, this.list);總結
以上是生活随笔為你收集整理的uniapp 强制刷新DOM/强制更新指令:this.$forceUpdate();的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 慢性牙周炎不治疗会怎么样
- 下一篇: 慢性根尖牙周炎治疗要多久