天天看點

為何Vue采用異步渲染?為何Vue采用異步渲染?

故心故心故心故心小故沖啊

文章目錄

  • 為何Vue采用異步渲染?

為何Vue采用異步渲染?

因為響應式資料都是元件化的,也就是說,每一次更新都是渲染整個元件,如果是同步渲染,隻要資料中一個資料進行了修改,就會使得整個元件重新去渲染,如果同時修改了多個資料就會更新多次.這樣子子是非常消耗性能的.

而采用異步渲染的話,隻需要更新一次,異步渲染主要采用的是nextTick這個方法,來清空隊列.

nextTick方法原理?

主要使用宏微任務來處理目前隊列,首先會先判斷目前環境是否支援promise,如果支援将采用promise.then來回調,如果不支援,将判斷目前環境是否支援原型的方法MutationObserver,如果不支援将判斷setImmediate支不支援目前環境,支援的話,将使用這個方法進行回調,最後都不支援的話,将采用setTimeout來進行回調.