Vue $nextTick

我们用一个例子来说明$nextTick的作用:

我们用一个变量showIpt来控制input框的显示和隐藏,默认是隐藏。

我们点击一个按钮后显示这个输入框的同时,input还要自动获取焦点。

但是我们点击按钮过后并没有生效。

为什么?this.showIpt=true执行过后接着就是执行this.$refs.ipt.focus() ,所有的代码执行完毕后将解析好的DOM放到页面上去。

也就是说,focus() 的时候DOM还没解析呢!

因此,我们就可以使用$nextTick() 来解决这个问题:

this.$nextTick( // 执行函数 )

$nextTick() 的作用就是在下一次DOM更新结束后执行其指定的回调。

当数据改变后,要对更新后的DOM进行一些操作时,就可以在$nextTick() 的回调函数中执行。

相关推荐
IT_陈寒33 分钟前
我竟然被JavaScript的隐式类型转换坑了三天!
前端·人工智能·后端
我亚索贼六丶37 分钟前
二十六. AI基础概念之如何更好的使用AI
前端
小码哥_常39 分钟前
安卓启动页Logo适配秘籍:告别“奇形怪状”的展示
前端
我亚索贼六丶39 分钟前
二十五.Electron 初体验与进阶
前端
当时只道寻常41 分钟前
像使用 Redis 一样操作 LocalStorage
前端·前端工程化
RONIN41 分钟前
UI组件库elementplus
前端
汤姆Tom41 分钟前
从 0 到 1 开发项目?你是否也是这样开始?先有再优化一步一步带你了解架构设计
前端·后端·架构
review4454342 分钟前
基于 Cursor 实现智能代码审查skill
前端
muskk5 小时前
一个文件,9万星:Karpathy 用 4 条规则治好了 AI 写代码的"坏毛病"
前端·后端
前端DOM哥5 小时前
8 年前的老代码 + 20 刀 AI token = 我的第一款独立产品
前端·人工智能·架构