Vue.nextTick( [callback, context] )

  • 参数

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

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

  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. })

2.1.0 起新增:如果没有提供回调且在支持 Promise 的环境中,则返回一个 Promise。请注意 Vue 不自带 Promise 的 polyfill,所以如果你的目标浏览器不原生支持 Promise (IE:你们都看我干嘛),你得自己提供 polyfill。