哪个网站有免费,如何申请微信企业号,搜狗网址,百度能收录的免费网站目录
1. 前言
2.什么是变化侦测
3.总结 1. 前言
众所周知#xff0c;Vue最大的特点之一就是数据驱动视图#xff0c;那么什么是数据驱动视图呢#xff1f;在这里#xff0c;我们可以把数据理解为状态#xff0c;而视图就是用户可直观看到页面。页面不可能是一成不变的…目录
1. 前言
2.什么是变化侦测
3.总结 1. 前言
众所周知Vue最大的特点之一就是数据驱动视图那么什么是数据驱动视图呢在这里我们可以把数据理解为状态而视图就是用户可直观看到页面。页面不可能是一成不变的它应该是动态变化的而它的变化也不应该是无迹可寻的它或者是由用户操作引起的亦或者是由后端数据变化引起的不管它是因为什么引起的我们统称为它的状态变了它由前一个状态变到了后一个状态页面也就应该随之而变化所以我们就可以得到如下一个公式
UI render(state)
上述公式中状态state是输入页面UI输出状态输入一旦变化了页面输出也随之而变化。我们把这种特性称之为数据驱动视图。
OK有了基本概念以后我们再把上述公式拆成三部分state、render()以及UI。我们知道state和UI都是用户定的而不变的是这个render()。所以Vue就扮演了render()这个角色当Vue发现state变化之后经过一系列加工最终将变化反应在UI上。
那么第一个问题来了Vue怎么知道state变化了呢
2.什么是变化侦测
那Vue是怎么知道state变化了呢换句话说数据变化了是怎么通知给Vue呢那么这就引出了Vue中的变化侦测。
变化侦测就是追踪状态亦或者说是数据的变化一旦发生了变化就要去更新视图。
变化侦测可不是个新名词它在目前的前端三大框架中均有涉及。在Angular中是通过脏值检查流程来实现变化侦测在React是通过对比虚拟DOM来实现变化侦测而在Vue中也有自己的一套变化侦测实现机制。
那么接下来我们就通过阅读源码来学习一下Vue是怎么实现自己的对数据变化进行侦测的机制。
3.总结
首先我们知道了什么是数据驱动视图。数据驱动视图简单来说就是数据变化引起视图变化那么第一步就是先要知道数据什么时候发生变化也就是说对数据的变化要进行侦测。
其次数据的变化侦测在三大框架中均有涉及不同的框架有着自己的一套侦测机制。
最后我们从源码出发学习在Vue中是如何对数据进行变化侦测的。