Vue $nextTick

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

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

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

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

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

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

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

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

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

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

相关推荐
「已注销」3 分钟前
面试分享:二本靠7轮面试成功拿下大厂P6
前端·javascript·面试
Lee川5 分钟前
深入浅出:用 React 打造高性能懒加载无限滚动组件
前端·react.js
walking95717 分钟前
重新学习前端之JavaScript
前端·vue.js·面试
walking95717 分钟前
重新学习前端之HTML
前端·vue.js·面试
牛奶19 分钟前
开发者的"奇技淫巧":那些让你效率翻倍的实战技巧
前端·后端·程序员
咸鱼翻身更入味19 分钟前
Vue创建一个简单的Agent聊天——工具调用
前端
Timo来了19 分钟前
indexDB的用法示例
前端
泉城老铁20 分钟前
springboot实现word转换pdf
vue.js·后端
walking95723 分钟前
重新学习前端之设计模式与架构
前端·javascript·面试
walking95726 分钟前
重新学习前端之TypeScript
前端·javascript·面试