• 赚钱入口【需求资源】限时招募流量主、渠道主,站长合作;【合作模式】CPS长期分成,一次推广永久有收益。主动打款,不扣量;

vue中的$nextTick详解

Vue cps12345 1年前 (2020-06-02) 565次浏览

$nextTick说明

Vue.nextTick()作用:

在下次dom更新循环结束之后,执行延迟回调。修改数据之后立即使用这个方法获得更新后的dom,这个方法作用是当数据被修改后使用这个方法,会回调获取更新后的dom再render出来

在以下两个情况下需要用到Vue.nextTick()

1、Vue声明周期的created() 钩子函数进行的DOM操作一定要放在Vue.nextTick() 的回调函数中,因为created() 执行的时候DOM实际上并未进行任何渲染,此时进行DOM操作无异于徒劳,所以此处一定要将DOM操作的js代码放进Vue.nextTick()的回调函数中。

与之对应的就是mounted 钩子函数,因为该函数执行时所有的DOM挂载和渲染都已完成,此时再钩子函数中进行任何DOM操作都不会有问题。

2、在数据变化后要执行的某个操作,而这个操作需要使用随数据改变而改变的DOM结构的时候,这个操作应该放进Vue.nextTick() 的回调函数中

总结:

如果你在数据改变之后的操作跟DOM有关,那么就应该使用Vue.nextTick()

喜欢 (2)