vue 为何采用异步渲染

2020-05-20  本文已影响0人  玲儿珑

理解:
如果不采取异步更新,那么每次更新数据都会对当前组件进行重新渲染,为了性能考虑,Vue 会在本轮数据更新后,再去异步更新数据。
Vue这样做的好处是,最终一次性更新DOM,避免重复操作DOM,耗费性能。

原理:
dep.notify() 通知 watcher 进行更新操作
-->subs[i].update() 依次调用 watcher 的 update
-->queueWatcher 将 watcher 重新放到队列中
-->nextTick(flushSchedulerQueue) 异步清空 watcher 队列

参考:
https://www.sohu.com/a/227583981_500651

上一篇 下一篇

猜你喜欢

热点阅读