【挥舞JS】vue双向数据绑定v

编程入门 行业动态 更新时间:2024-10-15 18:29:58

【挥舞JS】vue双向数据<a href=https://www.elefans.com/category/jswz/34/1769902.html style=绑定v"/>

【挥舞JS】vue双向数据绑定v

MVVM设计模式 Model View ViewModel

Vue.js 数据观测原理在技术实现上,利用的是ES5 Object.defineProperty()和存储器属性: getter和setter(所以只兼容IE9及以上版本),可称为基于依赖收集的观测机制。
核心是VM,即ViewModel,保证数据和视图的一致性。Vue.js 采用数据劫持结合发布者-订阅者模式的方式,在数据变动时发布消息给订阅者,触发相应的监听回调。

<!--View-->
<div id="app"><p v-model="message"></p><input type="text" v-model="message"/>
</div>
// Model
var data = {message: '',list: []
};
// ViewModel
var app = document.getElementById('app');
var Elements = app.querySelectorAll('[v-model]');
for (var i = 0; i < Elements.length; i++) {Elements[i].oninput = function () {data[this.getAttribute('v-model')] = this.value;}
}Object.defineProperty(data, 'message', {get: function () {return data.str;},set: function (val) {var Elements = app.querySelectorAll('[v-model=message]');for (var i = 0; i < Elements.length; i++) {Elements[i].value = val;Elements[i].innerText = val;}data.str = val;}
});

更多推荐

【挥舞JS】vue双向数据绑定v

本文发布于:2024-02-07 01:49:13,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1752431.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:绑定   双向   数据   JS   vue

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!