Vue 3.2 父子组件传 ref 数组监听:watch 如何正确使用?
关于 vue 3.2 父子组件传 ref 数组监听问题
问题中提到,在使用 ref 定义的父子组件传 ref 数组时,watch 不加箭头函数就无法进入监听。
官方 api 说明指出,watch 的第一个参数可以是 ref 或者一个返回 ref 值的函数。因此,应该将 watch 中的数据源写为:
watch( tableData, (newVal) => {...}, { deep: true } );
需要注意的是,当监听引用对象时,有以下规则:
-
ref 定义的引用对象:
- 获取当前值:watch 第一个参数直接写成数据源,并加上深拷贝选项(deep: true)
- 获取当前值和先前值:watch 第一个参数写成 getter 函数,对数据源进行深拷贝
-
reactive 定义的引用对象:
- 获取当前值:watch 第一个参数直接写成数据源,可以不加深拷贝选项
- 获取当前值和先前值:watch 第一个参数写成 getter 函数,对数据源进行深拷贝
以上就是Vue 3.2 父子组件传 ref 数组监听:watch 如何正确使用?的详细内容,更多请关注其它相关文章!