diff --git "a/1.3.Vue\345\217\214\345\220\221\347\273\221\345\256\232\345\216\237\347\220\206-Object.defineProperty\346\225\260\346\215\256\345\212\253\346\214\201\345\222\214\345\217\221\345\270\203\350\256\242\351\230\205\346\234\272\345\210\266.md" "b/1.3.Vue\345\217\214\345\220\221\347\273\221\345\256\232\345\216\237\347\220\206-Object.defineProperty\346\225\260\346\215\256\345\212\253\346\214\201\345\222\214\345\217\221\345\270\203\350\256\242\351\230\205\346\234\272\345\210\266.md" index b8bb906..3e14d4b 100644 --- "a/1.3.Vue\345\217\214\345\220\221\347\273\221\345\256\232\345\216\237\347\220\206-Object.defineProperty\346\225\260\346\215\256\345\212\253\346\214\201\345\222\214\345\217\221\345\270\203\350\256\242\351\230\205\346\234\272\345\210\266.md" +++ "b/1.3.Vue\345\217\214\345\220\221\347\273\221\345\256\232\345\216\237\347\220\206-Object.defineProperty\346\225\260\346\215\256\345\212\253\346\214\201\345\222\214\345\217\221\345\270\203\350\256\242\351\230\205\346\234\272\345\210\266.md" @@ -21,7 +21,9 @@ 我们来简单理一下实现思路: > 1、input输入框以及div文本和data中的数据进行绑定 + > 2、input输入框内容变化时,data中的对应数据同步变化,即 view => model + > 3、data中数据变化时,对应的div文本内容同步变化,即 model => view ## 原理介绍 @@ -135,7 +137,9 @@ function Dep() { 简单解析如下: > 1、实现一个数据监听器Obverser,对data中的数据进行监听,若有变化,通知相应的订阅者。 + > 2、实现一个指令解析器Compile,对于每个元素上的指令进行解析,根据指令替换数据,更新视图。 + > 3、实现一个Watcher,用来连接Obverser和Compile, 并为每个属性绑定相应的订阅者,当数据发生变化时,执行相应的回调函数,从而更新视图。 ### Vue中的Observer: