所谓的watch,其本质就是观测一个响应式数据,当数据发生变化时通知并执行相应的回调函数。实际上,watch 的实现本质就是利用了 effect 和 options.scheduler 选项。
source 是响应式数据,cb 是回调函数。如果副作用函数中存在 scheduler 选项,当响应式数据发生变化时,会触发 scheduler 函数执行,而不是直接触发副作用函数执行。从这个角度来看, scheduler 调度函数就相当于是一个回调函数,而 watch 的实现就是利用了这点。
Copyright @ 2018~2023 xlaoge.top 桂ICP备19005438号