<template>
<div>
<input ref="inputRef" type="text" placeholder="请输入内容" />
<button @click="focusInput">聚焦输入框</button>
</div>
</template>
<script setup>
import { ref, onMounted } from 'vue';
// 定义一个ref来引用DOM元素
const inputRef = ref(null);
// 定义一个方法来聚焦输入框
const focusInput = () => {
if (inputRef.value) {
inputRef.value.focus();
}
};
// 在组件挂载后,可以操作DOM元素
onMounted(() => {
if (inputRef.value) {
console.log('DOM元素已挂载:', inputRef.value);
}
});
</script>
模板部分 (<template>
):
ref="inputRef"
来绑定到 <input>
元素,这样可以在 JavaScript 中通过 inputRef
访问该 DOM 元素。focusInput
方法。脚本部分 (<script setup>
):
ref
函数创建一个响应式的引用 inputRef
,初始值为 null
。focusInput
方法,当点击按钮时会调用此方法,使输入框获得焦点。onMounted
钩子在组件挂载后执行一些逻辑,例如打印出 DOM 元素或对其进行其他操作。这样就可以通过 ref
来获取和操作 DOM 元素。
上一篇:element vue
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站