Vue.nextTick DOM 更新循环结束之后执行延迟回调
Posted corexin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue.nextTick DOM 更新循环结束之后执行延迟回调相关的知识,希望对你有一定的参考价值。
在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的 DOM。
简单来说,Vue 在修改数据后,视图不会立刻更新,而是等同一事件循环中的所有数据变化完成之后,再统一进行视图更新。
知乎上的例子
//改变数据 vm.message = ‘changed‘ //想要立即使用更新后的DOM。这样不行,因为设置message后DOM还没有更新 console.log(vm.$el.textContent) // 并不会得到‘changed‘ //这样可以,nextTick里面的代码会在DOM更新后执行 Vue.nextTick(function(){ console.log(vm.$el.textContent) //可以得到‘changed‘ })
以上是关于Vue.nextTick DOM 更新循环结束之后执行延迟回调的主要内容,如果未能解决你的问题,请参考以下文章