vue双向绑定的原理是什么?vue双向绑定的原理实现
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了vue双向绑定的原理是什么?vue双向绑定的原理实现,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1790字,纯文字阅读大概需要3分钟。
内容图文
本篇文章给大家带来的内容是关于vue双向绑定的原理是什么?vue双向绑定的原理实现,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。先上效果图
简单的实现数据的双向绑定
首先来了解一个东西:Object.defineProperty()
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty
这里是MDN对这个的详细说明
简单点说:
这个方法可以修改现有对象属性的值
Object.defineProperty(obj, prop, descriptor)
参数说明:
obj:定义属性的对象
prop:修改的属性
descriptor:修改的属性描述符
这边只挑最简单的说,
get:
官方:一个给属性提供 getter 的方法,如果没有 getter 则为 undefined。当访问该属性时,该方法会被执行,方法执行时没有参数传入,但是会传入this对象(由于继承关系,这里的this并不一定是定义该属性的对象)。默认为 undefined。
**简单的说:当你需要取对象的属性值时,就是来调用这个函数,取到值的**
set:
官方:一个给属性提供 setter 的方法,如果没有 setter 则为 undefined。当属性值修改时,触发执行该方法。该方法将接受唯一参数,即该属性新的参数值。默认为 undefined。
**简单的说:当你需要设置(改变)对象的属性值时,就是来调用这个函数,达到修改的**
接下来上代码
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1"> <title></title> </head> <body> <div id="aa"></div> <div> <input type="text" oninput="changedata(this.value)"> </div> <script> var data = {}; var dom_aa = document.getElementById("aa") function changedata(value){ data.a = value } //直接使用Object.defineProperty里面的set方法进行视图改变 Object.defineProperty(data,"a",{ set:function(newValue){ dom_aa.innerHTML = newValue; }, get:function(){ return a; } }) </script> </body> </html>
相关推荐:
Angular和Vue双向数据绑定的实现原理(重点是vue的双向绑定)
vue双向数据绑定原理探究
以上就是vue双向绑定的原理是什么?vue双向绑定的原理实现的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是互联网集市为您收集整理的vue双向绑定的原理是什么?vue双向绑定的原理实现全部内容,希望文章能够帮你解决vue双向绑定的原理是什么?vue双向绑定的原理实现所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。