美文网首页
watch中的deep:true是如何实现的

watch中的deep:true是如何实现的

作者: 玲儿珑 | 来源:发表于2020-05-20 17:17 被阅读0次

    当用户指定了watch中的deep属性为true时,如果当前监控的值是数组类型。会对对象中的每一项进行求值,此时会将当前watcher存入到对应属性的依赖中,这样数组中对象发生变化时也会通知数据更新。

    但是,deep的意思就是深入观察,监听器会一层层的往下遍历,给对象的所有属性都加上这个监听器,但是这样性能开销就会非常大了,任何修改obj里面任何一个属性都会触发这个监听器里的 handler。

    所以,可以这样改进:优化,我们可以是使用字符串形式监听。

    参考:https://www.axihe.com/focus/vue/07.html
    https://www.cnblogs.com/yesu/p/9546458.html

    相关文章

      网友评论

          本文标题:watch中的deep:true是如何实现的

          本文链接:https://www.haomeiwen.com/subject/oxmnohtx.html