![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
vue
文章平均质量分 70
Xiao_yi_fei
这个作者很懒,什么都没留下…
展开
-
Vue的响应式——Vue源码学习总结(二)
Vue的响应式数据驱动视图:数据变化了,做一些事情让视图改变。数据劫持:当数据被访问的时候,进行拦截,此时会进行依赖收集,数据被改变你的时候,会发送通知,告诉依赖下的watcher该执行了。依赖收集:new watcher()中,其中会传入vm._update(vm._render())函数,在watcher中执行vm._update(vm._render()),在_render当中会访问数据,然后会被劫持,最后触发依赖收集的过程。通知依赖:数据改变,通知依赖执行对应的渲染函数,即vm._updat原创 2021-01-30 12:45:09 · 166 阅读 · 0 评论 -
Vue首次渲染的过程——Vue源码学习总结(一)
Vue首次渲染的过程1.首先是Vue实例的初始化过程,挂载一些全局的静态方法,以及原型上的一些方法。2.在_init函数的最后调用mount,$mount中调用mountComponent3.在mountComponent中new一个Wactcher,并传入vm._update(vm._render)4.在watcher中,把vm._update(vm._render)赋值给getter,最后调用get方法,在get方法中调用getter真正开始渲染视图5.vm._render其实就是用来创建虚拟原创 2021-01-30 12:39:41 · 230 阅读 · 1 评论 -
手写一个简单的vue
文章目录一、观察者模式二、对Vue的整体分析三.Vue类四.Observer类五.Compiler类六.Watcher类七.Dep类一、观察者模式先上一个图来描述一下vue的响应式就是基于观察者模式进行的。其实不难理解:比如你是一个作者(发布者),很多粉丝(观察者)关注了你(订阅事件),你一旦写好了一本书发布了(触发了事件),然后粉丝就会阅读书籍(观察者根据触发的事件做一些事情)。那么在vue里面,数据改变了视图就更新,其实道理很简单,数据改变了执行一些函数(dom操作)让页面更新。用一个图来表示原创 2021-01-24 22:57:55 · 693 阅读 · 2 评论