01 参数

  • {Function} [callback]
  • {Object} [context]

02 用法

在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的 DOM。

03 参考

  1. // 修改数据
  2. vm.msg = 'Hello'
  3. // DOM 还没有更新
  4. Vue.nextTick(function () {
  5. // DOM 更新了
  6. })
  7. // 作为一个 Promise 使用 (2.1.0 起新增,详见接下来的提示)
  8. Vue.nextTick()
  9. .then(function () {
  10. // DOM 更新了
  11. })

04 源码

我们可以从源码入手分析一下,基于vue 2.6.11 版本,源码地址为:src/core/global-api/use.js
nextTick是全局vue的一个函数,在vue系统中,用于处理dom更新的操作。vue里面有一个watcher,用于观察数据的变化,然后更新dom,vue里面并不是每次数据改变都会触发更新dom,而是将这些操作都缓存在一个队列,在一个事件循环结束之后,刷新队列,统一执行

对应的消息文件;以及对应的数据点修改点方案;