Vuetify 3:实现文本框式日期选择器并精简冗余元素
Vuetify 3 文本框触发的精简日期选择器实现
以下是满足需求的完整实现代码:
<template> <v-app> <v-container> <v-menu v-model="isMenuOpen" :close-on-content-click="false"> <template v-slot:activator="{ props }"> <v-text-field label="Selected date" v-model="selectedDate" readonly v-bind="props" ></v-text-field> </template> <v-date-picker v-model="selectedDate" header="false" footer="false" @update:model-value="isMenuOpen = false" ></v-date-picker> </v-menu> </v-container> </v-app> </template> <script setup> import { ref } from 'vue' const isMenuOpen = ref(false) const selectedDate = ref() </script>
关键修改说明
- 移除头部与底部栏:给
v-date-picker添加header="false"和footer="false"属性,直接隐藏默认的月份切换头部与底部操作栏。 - 选中日期自动同步并关闭菜单:监听
v-date-picker的update:model-value事件,用户选中日期时自动关闭菜单,同时v-model会同步更新selectedDate的值,文本框也会实时显示选中结果。 - 文本框绑定优化:将原单向绑定的
:model-value改为v-model,让数据同步逻辑更直观简洁。
内容的提问来源于stack exchange,提问作者baitendbidz
相关产品推荐
相关产品推荐

