vue3 动态input 聚焦点

在Vue 3中,你可以使用ref和onMounted生命周期钩子来设置动态输入框的聚焦点。以下是一个简单的例子:

<template>
  <div>
    <div v-for="(item, index) in inputs" :key="index">
      <input ref="inputRef" type="text" />
    </div>
  </div>
</template>
 
<script setup>
import { ref, onMounted } from 'vue';
 
const inputs = ref(['Input 1', 'Input 2', 'Input 3']); // 假设有3个输入框
const inputRef = ref(null);
 
onMounted(() => {
  inputRef.value.focus(); // 在组件挂载后聚焦第一个输入框
});
</script>

如果你想要在特定条件下聚焦某个输入框,你可以使用ref属性来区分不同的输入框,并在需要的时候调用focus方法。

<template>
  <div>
    <div v-for="(item, index) in inputs" :key="index">
      <input :ref="setInputRef" type="text" />
    </div>
  </div>
</template>
 
<script setup>
import { ref, onMounted } from 'vue';
 
const inputs = ref(['Input 1', 'Input 2', 'Input 3']);
const inputRefs = ref([]);
 
const setInputRef = (el) => {
  if (el) {
    inputRefs.value.push(el);
  }
};
 
onMounted(() => {
  // 聚焦第二个输入框
  inputRefs.value[1].focus();
});
</script>

在这个例子中,我们使用setInputRef函数来收集所有的输入框引用,并在onMounted钩子中通过索引来聚焦特定的输入框。

posted @   寒冷的雨呢  阅读(1246)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2022-05-11 MyBatisPlus的QueryWrapper用法
点击右上角即可分享
微信分享提示