面试真题

前端 · 中等 · 百度

Vue.nextTick` 源码逻辑简述(Vue 2.x)

中等 前端 🎤 百度
参考答案
结论:Vue.nextTick利用异步队列机制将回调延迟到DOM更新周期之后执行。要点:内部维护callbacks队列和pending状态;调用nextTick(cb)将cb推入队列,若未等待则触发异步flushCallbacks;异步优先用Promise.then微任务,降级MutationObserver、setImmediate、setTimeout宏任务;flushCallbacks遍历执行并清空;原理:Vue数据响应化后Watcher更新入队,同一事件循环多次数据变更只一次真实DOM patch,nextTick回调在patch完成后调用,确保获取更新后DOM。
题目整理自公开面经,答案由校招宝自研生成,仅供参考