扫码关注官方订阅号
原文
vue文档深入响应式原理一章关于变化检测问题中的这句话什么意思,具体是js的什么限制?
欢迎选择我的课程,让我们一起见证您的进步~~
ECMAScript中有两种属性:数据属性和访问器属性;数据属性的描述符为:Configurable,Enumerable,Writable,Value;访问器属性的描述符为:Configurable, Enumerable,set,get。
当我们使用new Vue(obj),其内部发生了大体如下代码的转换,即将数据属性,转换为了访问器属性
new Vue(obj)
function Vue(obj){ obj.data.keys().forEach((prop, index) => { Object.defineProperty(obj.data, prop, { set(){ //可以在此处进行事件监听 }, get(){ } }) }) return obj; }
但是当我们后面再次使用普通的赋值,仅仅是赋值了一个数据属性的,这个属性是不会具有访问器属性的事件监听功能的。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
ECMAScript中有两种属性:数据属性和访问器属性;
数据属性的描述符为:Configurable,Enumerable,Writable,Value;
访问器属性的描述符为:Configurable, Enumerable,set,get。
当我们使用
new Vue(obj),其内部发生了大体如下代码的转换,即将数据属性,转换为了访问器属性但是当我们后面再次使用普通的赋值,仅仅是赋值了一个数据属性的,这个属性是不会具有访问器属性的事件监听功能的。