Vue双向数据绑定的理解

一、什么是MVVM框架

   所谓MVVM,是Model - View - ViewModel 的简写。

   我的理解是

页面上所看到的就是View。
使用Vue.js或者是其他MVVM框架,是在操作ViewModel,实现View - ViewModel的双向互动。
然后Model就是服务器的资源,ViewMdoel从服务器请求数据,或者发送数据给服务器,就是ViewModel - Model的双向互动。

二、双向数据绑定的原理

    双向数据绑定,双向指的是两个方向。

    一是数据驱动页面,

    二是页面改动了,会响应式的改变绑定的数据。主要是input的变动。

    绑定说的是MVVM框架,自动的去完成数据的改动,页面的渲染。

    不像以前,改变页面上的一个值,要先去获取该元素的节点,然后再去设置它的文本内容(比如innerHTML属性)。

    那么更具体的讲,具体实现主要使用的是,或者说细节是:

    1.Object.defineProperty属性。这是MVVM框架的核心API。

    2.观察者设计模式

    利用Object.defineProperty这个API实现了对Data每个属性的监听和回调。

    数据驱动页面方向:就是当去修改Data某一个属性时,会通知观察者,然后观察者触发自身的回调函数,进而重新渲染页面。

    页面 =》 数据:其实就是去监听input的oninput事件。oninput事件会去修改对应的Data的属性值。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值