VUE双向绑定原理是前端小伙伴很难绕过的一道面试题!本篇文章对其原理进行了最大程度的精简,希望对面试VUE开发的前端小伙伴有所帮助!我在这里将指令 v-改为z-,主要完成z-model、z-click、z-text以及z-html四个提令。
为了能够快速读懂代码,首先要先弄明白以下三个概念:
1、观察者(observer):也就是数据监听器,负责数据对象的所有属性进行监听劫持,并将消息发送给订阅者进行数据更新
2、订阅者(watcher):负责接收数据的变化,更新视图(view),数据与订阅者是一对多的关系。
3、解析器(compile):负责对你的每个节点元素指令进行扫描和解析,负责相关指令的数据初始化及创造订阅者
我们实现一个简单的小功能:
html:
![](https://img.haomeiwen.com/i15617440/651fac3bf546edfa.png)
.js完整代码如下,不足70行:
![](https://img.haomeiwen.com/i15617440/d37c9a143562cdaa.png)
![](https://img.haomeiwen.com/i15617440/359bccb8b602707c.png)
![](https://img.haomeiwen.com/i15617440/0fa0cdb490f45dca.png)
网友评论