Vue双向绑定
vue的双向数据绑定的原理相信大家都十分了解;主要是通过ES5的Object对象的defineProperty属性;重写data的set和get函数
来实现的。
该方法允许精确的添加或者修改对象的属性;通过赋值来添加的普通属性会创建在属性枚举期间显示;这些添加的值可以被改变也可以删除;也可以给这个属性设置一些特性;比如是否只读不可写;目前提供两种形式:
数据描述(set;get;value;writable;enumerable;confingurable)
存取器描述(set;get)
vue和angular的双向数据绑定不同
- angular是用脏数据检测;Model发生改变的时候;会检测所有视图是否绑定了相关的数据;再更新视图
- vue是使用的发布订阅模式;点对点的绑定数据