Vue 如何監聽數組變化


監聽方式包含兩部分

 

一,通過重寫data 對象中Array原型上的方法,push/pop/shift/unshift/soft/reverse/splice,當調用這些方法修改數組時,會觸發更新

二,通過defineproperty這個方法,不能監聽到this.list[1] = 100;this.list.length = 0;這兩種修改數組的方式,所以要通過Vue.set(this.list, 0, 100)或者this.list[0] = 100;this.list.splice(0, 0);手動刷新下才行。

但是[{name: 'pig'}],修改this.list[0].name = '占山';這個時會觸發更新的,因為它遍歷了數組,如果是對象,會observe它。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM