今天写标准的表单时,想要 el-input 框在组件加载时自动聚焦,但是一直无法生效。
开发版本如下:
"element-plus": "2.11.3"
"vue": "3.5.19"
复现代码如下:
html
<template>
<div>
<el-input v-model="name" ref="nameRef"></el-input>
</div>
</template>
<script setup>
import { onMounted, ref, nextTick } from "vue";
const nameRef = ref(null);
const name = ref("");
onMounted(async () => {
await nextTick();
nameRef.value?.focus();
});
</script>
暂未找到原因,临时解决方法:
javascript
onMounted(() => {
nameRef.value?.$el.querySelector("input")?.focus();
});