vue.js - 如果我在我的文本字段中输入,Vuetify 日期选择器不会保存正确的日期
问题描述
再会。
我一直在使用 vuetify 创建一个表单,在这个表单中我需要选择一个日期,在该日期中我使用具有计算属性的日期选择器来格式化日期。如果我从日期选择器日历中选择日期,它工作得很好,但是当我尝试输入或复制粘贴日期时,我得到一个错误,它会返回我在日历上选择的任何最后一个日期。我到底做错了什么?
这是我得到的错误:'计算属性“computedDateFormatted1”已分配给但它没有设置器'
这是我的日期选择器
<v-col cols="6">
<v-menu
ref="menu"
v-model="menu"
:close-on-content-click="false"
transition="scale-transition"
offset-y
max-width="290px"
min-width="290px"
:rules="rules"
>
<template v-slot:activator="{ on }">
<v-text-field
v-model="computedDateFormatted"
label="Emissão"
hint="Select date"
persistent-hint
prepend-icon="mdi-calendar"
v-on="on"
></v-text-field>
</template>
<v-date-picker v-model="emission" no-title @input="menu = false"></v-date-picker>
</v-menu>
</v-col>
这是我的计算变量和方法:
computed: {
computedDateFormatted () {
return this.formatDate(this.emission)
},
}
methods: {
formatDate (date) {
if (!date){
return ""
} else {
const [year, month, day] = date.split('-')
return `${day}/${month}/${year}`
}
}
}
解决方案
尝试在文本字段上使用 :value
<v-text-field :value="date">
然后使用 vue 过滤器..您可以在此处查看文档如何使用它。 https://vuejs.org/v2/guide/filters.html
然后以您的价值添加过滤器。例如 :value="date | formatDate" 我希望它有所帮助。
推荐阅读
- javascript - 无法使用 javascript 从 div 中删除类
- java - 在 AMQP 的 Spring 集成中使用 ImmediateRequeueMessageRecoverer?
- data-warehouse - 事实表设计将如何改变以适应多种用途
- python - 在 vim 中使用带有 Syntastic 的多个 Python 检查器的问题
- azure - 有没有办法从 Azure DevOps API 中提取积压项目数据?
- ssl - curl:通过代理访问 TLS 安全的 FTP 服务器
- css - Swiper js轮播不适用于设置为背景附件的背景图像:已修复
- javascript - 严格使用 PHP 对搜索结果进行复选框过滤?
- .net - dotnet 5:十进制静默截断 - 如何使其中断?
- svelte - Svelte、Rollup 和 Contentful API 的 contentful-sdk-core 和外部依赖问题