最近发现在vue中使用watch监听对象或者数组时,当数组或者对象只是单一的值改变时,并不会出发watch中的事件。
在找问题过程中,发现当数组使用push一类的方法时,会触发watch,如果只是单一改变,如object[index] = newData,并不会触发,而对象同理。
解决方法:
使用vue的set方法
即 this.$set(Object,index,newdata)
Object为你需要改变的数组,index为要改变的数组下标,newdata为新值。
这样的话,watch中的监听事件就会被触发。