作为一名资深的[cv]工程师,结束了一整天的忙碌之后,就急急忙忙的跑回家,干饭,看剧,打游戏。其实很想问问各位胖友是怎么安排每天下班之后的时间的?是选择继续深耕呢,还是接受着平庸?灵魂总有觉醒的时候,从现在开始,阅读vue源码,并坚持每周输出3篇文章,先坚持下去,看看会发生什么?菜鸟本菜,不管怎么来的,写出来了就是我的,文章中一定会有很多一眼就能看到的问题,欢迎各位大佬指正
vue我们都在用,在感受其带给我们的便利之时,其实也应该去看看源码,这样用起来才会得心应手不是吗?本文将主要从vue的双向数据绑定原理来展开
vue是如何实现双向数据绑定呢?
上图大家应该不陌生吧,谈到vue的双向数据绑定原理,去网络上一搜,基本上都能看到这张图,下面我会尝试用个人觉得正确且通俗易懂的话去解释这张图,这张图明白了,自然也就明白了vue的双向数据绑定原理
【vue的双向数据绑定原理】
当vue实例被创建的时候,vue会通过Object.defineProperty()方法挟持实例当中的所有属性,并且为每个属性创建一个监听器,当实例当中的属性值发生变化的时候,通知订阅者,通过视图更新函数去更新视图
啊啊啊,写文章真难,你可能会说这哪里有源码的影子,下一篇文章再去讲讲Observer,Watcher,Compile这几位关键c位是如何工作的吧,送我一朵小红花吧,笔芯笔芯