当前位置: 首页 > news >正文

Vue中input框自动聚焦

在Vue中input自动聚焦的思路:

  • 给需要聚焦的input设置ref
        <el-inputv-model="loginForm.username"ref="userNameInput"name="username"type="text"auto-complete="on"placeholder="username"@keyup.enter.native="handleLogin"/>
  • 创建一个聚焦的方法

this.$nextTick()将回调延迟到下次 DOM 更新循环之后执行。在修改数据之后立即使用它,然后等待 DOM 更新

    inputFocus: function() {this.$nextTick(x => {this.$refs.userNameInput.focus()})},
  • 在create方法中调用
  created() {this.inputFocus()},

这样每次加载登录页面的时候,就会自动对input框进行聚焦了,然后只需要按下回车,即可登录到后台系统~

因为我们都知道,vue的钩子函数created,在调用的时候,Dom还没有进行任何渲染,如果我们直接执行

this.$refs.userNameInput.focus()

这个代码的话,是没有效果的,因此需要使用this.$nextTick(),将它延迟到下次Dom渲染的时候执行

但是如果在mounted钩子函数执行的话,因为当mounted钩子函数执行的时候,Dom树已经渲染完毕了,那么就可以直接获取对应的dom进行渲染,也就不需要使用this.$nextTick()方法了,因此还可以直接这样写

  mounted() {this.$refs.userNameInput.focus()},

http://www.mrgr.cn/news/36777.html

相关文章:

  • 餐厅包厢预订小程序
  • 第十二章RAS extension support
  • FineReport多数据源报表
  • 聊一聊软件测试的基本原则有哪些
  • 自闭症摘帽学校评价:家长共同推崇的信赖之选
  • Jenkins的安装
  • 王霞培优100分(全套)
  • 点击IDEA中的maven插件中的生命周期的命令发现没有效果,没有任何反应,解决办法在下面
  • C++ 基于 Epoll 的多客户端聊天室项目
  • GUET-CTF2019]soul sipse
  • k8s 1.28.2 集群部署 ingress 1.11.1 包含 admission-webhook
  • video视频标签播放视频时点击或拖拽进度条事件
  • 跨网文件交换是什么?FileLink跨网文件交换解决方案
  • ide使用技巧与插件推荐
  • netty编程之对3种IO模式的支持以及对应的关键源码分析
  • yolov5/v7/v8随机种子固定方法
  • 电脑usb接口封禁如何实现?5种禁用USB接口的方法分享!(第一种你GET了吗?)
  • 【已解决】Ubuntu 24.04 修改 ssh 连接端口无效
  • BSIM4 and MOSFET Modeling For IC Simulation
  • 屏幕翻译下载哪个?建议试试这5个