小問號,你是否有很多的朋友?
當我this.$set修改對象屬性竟然沒有引發更新的時候我是崩潰的,我甚至開始懷疑起這個代碼、這個編輯器甚至這個瀏覽器在針對我_(:з」∠)_!
最終原因是初始對象中沒有這個屬性時,我直接用
obj.attr= [];
新增了一個attr屬性,導致在
this.$set(this.obj, 'attr', '[1,2,3]');
時沒有引發更新。
其實新增屬性的時候就應該用
this.$set(this.obj, 'attr', []);
來新增屬性,這樣才能建立起監聽。