美文网首页
Vue原理浅析^_^

Vue原理浅析^_^

作者: 贫下码农 | 来源:发表于2018-07-19 19:52 被阅读0次

title: Vue
date: 2018-03-29 13:39:09
tags:


Vue2是一个典型的MVVM框架,模型(Model)只是一个普通的javascript对象, 修改它则视图(View)会自动更新,这种设计使得状态管理变得简单而直观。

Vue实现数据绑定的效果,需要三大模块:

  1. Observer:能够对数据对象的所有属性进行监听,一旦变动可拿到最新值通知订阅者。
  2. Compile:对每个元素节点的指令进行扫描和解析,根据指令模板替换数据,以及绑定响应的更新函数
  3. Watcher:订阅者,作为连接Observer和compile的桥梁,能够订阅并且受到每个属性变动的通知,执行指令绑定的响应更新函数,从而更新视图

Observer

Observer的核心是通过Object.defineProperty()来监听数据的变动,这个函数内部可以定义settergetter,每当数据发生变动时,就会触发setter,这时候Oberver就会通知订阅者,订阅者就是Watchter,更新响应的视图。

Watcher

Watcher订阅者作为Observer和Compile之间通信的桥梁,主要做下面几个事:

  1. 在自身实例化时往属性订阅器(dep)里面添加自己
  2. 自身必须要有一个update()方法
  3. 待属性变动,dep.notice()通知时,能调用自身的update方法,并且触发Compile中绑定的回调

Compile

Compile主要做的事情就是解析模板指令,将模板中的变量替换成数据,然后初始化渲染页面视图,并将每个节点对应的指令绑定更新函数,添加监听数据的订阅者。

相关文章

  • vue-router的原理

    参考文章:vue-router浅析原理 1.vue-router是用来干什么的?是与Vue深度集成的、用来做单页面...

  • Vue原理浅析^_^

    title: Vuedate: 2018-03-29 13:39:09tags: Vue2是一个典型的MVVM框架...

  • vue原理浅析

    大概流程 使用正则等方式解析模板,生成词法树,优化之后生成render函数,然后生成VDom对象,再通过h函数生成...

  • iOS应用程序的脱壳实现原理浅析

    iOS应用程序的脱壳实现原理浅析 iOS应用程序的脱壳实现原理浅析

  • Vue 双向绑定原理浅析

    参考 Vue.js MDN 一、 vue 双向数据绑定语法 Vue.js作为前端MVVM三大框架之一,最核心的功能...

  • Vue响应式原理浅析

    响应式原理 考虑下面的情形: 如何让a变化的时候,b始终是a的10倍?也就是说像下面这样: 这其实就是vue的响应...

  • 浅析Vue.nextTick()原理

    转载:https://segmentfault.com/a/1190000020499713?utm_source...

  • Vue响应式原理浅析

    最近在学习前端框架Vue ,对其响应式原理做一些简单的分析 大致原理: 当把一个普通的 JavaScript 对象...

  • 浅析Vue.nextTick()原理

    1、为什么用Vue.nextTick() 首先来了解一下JS的运行机制。 JS运行机制(Event Loop) J...

  • 9.淘宝SEO优化原理结构浅析之二

    淘宝SEO优化原理结构浅析之二 淘宝SEO优化原理结构浅析图1-1 搜索降权行为:淘宝反作弊系统根据商家作弊数据的...

网友评论

      本文标题:Vue原理浅析^_^

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