渐进式框架
视图层渲染-组件机制-路由机制-状态管理-构建工具
你可以使用只使用视图层渲染快速开发,也可以使用全家桶开发大型项目
object的变化侦测
- Dep类专门用来收集依赖、删除依赖、向依赖发送通知
- vue2.0最小的依赖是组件级别,从而减小dom级别依赖过多,内存开销大的问题
- Watcher类是一个中介角色,dep中依赖收集的即是watcher实例,数据变化时dep循环
通知watcher实例,watcher实例再通知其他地方(比如调用回调函数) -
Observer类将递归object所有属性转换为getter/setter
image.png
- vue2.x使用Object.defineProperty侦测对象
- Object收集依赖在getter中,每个key都有一个Dep列表来存储依赖,触发依赖是在setter中,循环依赖列表触发更新
- 收集依赖其实就是收集的Watcher实例
array的变化侦测
-
支持proto时,使用拦截器覆盖Array的原型(拦截器是Array原型的实例)
WechatIMG3.jpeg
-
不支持proto时,将拦截器方法挂载到数组的每个value属性上
WechatIMG2.jpeg
-
Array在getter中收集依赖,在拦截器中触发依赖
-
array的依赖列表存在observer中












网友评论