flybirding10011 2022-06-01 16:37 采纳率: 51.9%
浏览 72
已结题

vue实现双向数据绑定原理是什么?

vue实现双向数据绑定原理是什么?的发valkdnvalkdnvmlncnadkvnaksdvnakjsdnvkajdnvkja。

  • 写回答

4条回答 默认 最新

  • 猫巳 优质创作者: Java技术领域 2022-06-02 09:35
    关注

    目前几种主流的mvc(vm)框架都实现了单向数据绑定(例如react就是典型的数据单向绑定),简单的理解双向数据绑定无非就是在单向绑定的基础上给可输入元素(input、textare等)添加了change(input)事件,来动态修改model和 view。

    1.首先,需要利用Object.defineProperty,将要观察的对象,转化成getter/setter,以便拦截对象赋值与取值操作,称之为Observer,也就是数据观察者;
    2.需要将DOM解析,提取其中的指令与占位符,并赋与不同的操作,称之为Compile,也就是指令解析器;
    3.需要将Compile的解析结果,与Observer所观察的对象连接起来,建立关系,在Observer观察到对象数据变化时,接收通知,同时更新DOM,称之为Watcher,也就是订阅者,它是Observer和Compile之间通信的桥梁;
    4.最后,需要一个公共入口对象,接收配置,协调上述三者,称为vm,也就是Vue;

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月2日
  • 修改了问题 6月1日
  • 创建了问题 6月1日