Object.defineProperty

2018-11-29  本文已影响14人  仰望天空的人

最近常规做一个消息滚动时 循环里if判断盒子 show hide状态,居然不能实时触发,这才想到这个属性,没什么注解的,先码着

VueJS:采用 Object.defineProperty() 方法,监控对数据的操作,从而可以自动触发数据同步。并且,由于是在不同的数据上触发同步,可以精确的将变更发送给绑定的视图,而不是对所有的数据都执行一次检测。(angular采用的脏值检测,数据发生变更后,对于所有的数据和视图的绑定关系进行一次检测,相比之下,emmm)

基本用法

var a = {};
Object.defineProperty(a, 'b', {
    value: 123
});
console.log(a.b); // 123

很简单,它接受三个参数,而且都是必填的。

参数介绍:

前两个参数不多说了,一看代码就懂,主要看第三个参数,看看有哪些取值。

上一篇下一篇

猜你喜欢

热点阅读