框架VUE学习--1

1.简介
Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式JavaScript框架。Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,方便与第三方库或既有项目整合。开发商是尤雨溪,使用的是javescript语言。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件
框架VUE学习--1
1、VUE的特点(数据驱动视图)
Vue最大的特点之一就是数据驱动视图,我们可以把数据理解为状态,而视图就是用户可直观看到页面。页面不可能是一成不变的,它应该是动态变化的,而它的变化也不应该是无迹可寻的,它或者是由用户操作引起的,亦或者是由后端数据变化引起的,不管它是因为什么引起的,我们统称为它的状态变了,它由前一个状态变到了后一个状态,页面也就应该随之而变化,所以我们就可以得到如下一个公式:

UI = render(state)

上述公式中:状态state是输入,页面UI输出,状态输入一旦变化了,页面输出也随之而变化。我们把这种特性称之为数据驱动视图。
我们再把上述公式拆成三部分:state、render()以及UI。我们知道state和UI都是用户定的,而不变的是这个render()。

所以Vue就扮演了render()这个角色,当Vue发现state变化之后,经过一系列加工,最终将变化反应在UI上。

2、什么是变化侦测
变化侦测就是追踪状态,亦或者说是数据的变化,一旦发生了变化,就要去更新视图。
变化侦测在目前的前端三大框架中均有涉及。在Angular中是通过脏值检查流程来实现变化侦测;在React是通过对比虚拟DOM来实现变化侦测,而在Vue中也有自己的一套变化侦测实现机制。
----2.1使Object数据变得“可观测”
数据的每次读和写能够被我们看的见,即我们能够知道数据什么时候被读取了或数据什么时候被改写了,我们将其称为数据变的‘可观测’。要想知道数据什么时候被读取了或数据什么时候被改写了,JS为我们提供了Object.defineProperty方法。