双向数据绑定是采用数据劫持结合发布者-订阅者模式实现的,通过Object.defineProperty()里的setter、getter来数据监听监听,在数据变动时发送通知给“订阅者”,从而执行相应的回调。
1,创建一个监听器Observer,对所有数据进行监听,若有变动拿到最新值通知订阅者。
2,创建一个指令解析器Compile,扫描元素所有的指令,根据指令对模板数据填充和其他指令操作。
3,创建一个watcher,他是Observer与Compile的桥梁,能够接收到所有属性变动的通知,执行指令绑定的回调函数,从而更新视图。
4,mvvm的入口函数,整合以上三者。
vue底层原理?
最新推荐文章于 2023-07-25 13:34:49 发布