watch监听数组变化时,需要监听它本身的变化,以及监听它数组内部的push、shift一类事件的变化.

通过watch直接监听ref定义的数组是监听不到数组内部push/shift一类事件的

所以我们需要写两项监听

let data = ref([])
watch(data, (newVal) => {
 console.log(data数据本身修改啦)
})
watch(data.value, (newVal) => {
 console.log('数组内部数据修改啦')
})
// 第一个watch只能监听到这一类变化
// data.value = [1, 2, 3, 4]
// 第二个watch只能监听到这一类变化
// data.value.push(1)
// data.value.unshift(1)