最近项目中在做评论的时候,需要自动滚动到评论框,并且让评论框自动聚焦,这就需要手动触发输入框的 focus 状态。 原理其实很简单,Element 已经提供了 focus 方法,但是文档并没有写明如何去调用,经过 Google 大法,算是找到了解决办法。
vue2写法
给 el-input 标签 加上 ref 属性
<el-input v-model="input" placeholder="请输入内容" ref="input"></el-input>
利用 ref 获取 el-input 并调用 focus 方法
this.$refs.input.focus();
vue3+ts写法
父组件引入el-input组件
<el-row class="cron-row">
<el-input ref="myRef" v-model="size" placeholder="Please input" />
</el-row>
在script代码块中代码如下
const myRef = ref()
const change = ()=>{
myRef.value.focus()
}