【发布时间】:2021-08-02 17:35:26
【问题描述】:
我在比较我的出发日期和返回日期时遇到了问题。从今天早上开始,我尝试了几件事,但没有任何效果。如果此人选择与退货相同的日期,我想显示一条错误消息。但这不起作用。谁能告诉我我的代码有什么问题?在此先感谢:)
<template>
<div >
<datepicker v-model="dateSelectAller" lang="fr" type="date" format="dd-MM-YYYY" :lowerLimit="Date.now()" ></datepicker>
</div>
<div v-show="!isSuccess">
<span class="error-text" v-if="errors.timeAllerErrors">{{ errors.timeAllerErrors }}</span>
</div>
<div >
<datepicker v-model="dateAnterieurRetour" lang="fr" type="date" format="dd-MM-YYYY" :lowerLimit="Date.now()"></datepicker>
</div>
<div v-show="!isSuccess">
<span class="error-text" v-if="errors.dateRetour">{{ errors.dateRetour }}</span>
</div>
</template>
<script>
data(){
return{
format,
dateSelectAller:new Date(),
dateAnterieurRetour: new Date(),
isSuccess:false,
errors:{}
}
}
beforeMount(){
this.dateAnterieurRetour = this.dateAnterieurRetour.setDate(this.dateAnterieurRetour.getDate() +1)
},
watch:{
dateSelectAller(newValue){
if(newValue >= this.dateAnterieurRetour){
this.errors['dateAller'] = 'Choisir une date inférieur à celle de retour'
}else{
this.errors['dateAller'] = ''
}
console.log(newValue)
if(this.date1 === this.date2){
return this.errors['timeRetourErrors'] = 'test erreur'
}else{
return this.errors['timeRetourErrors'] = ''
}
},
dateAnterieurRetour(newValue){
console.log(newValue)
if(newValue <= this.dateSelectAller){
this.errors['dateRetour'] = 'la date choisi n\' est pas valide!'
}else{
this.errors['dateRetour'] = ''
}
console.log(newValue)
},
},
methods:{
getFormat () {
return this.format(new Date(this.dateSelectAller) , 'dd-MM-yyyy', {locale: window.locale})
} ,
getFormatRetour () {
return this.format(new Date(this.dateAnterieurRetour) , 'dd-MM-yyyy', {locale: window.locale})
} ,
}
</script>
【问题讨论】:
-
你试过时间戳比较吗?
-
正如@0x30c4 所说,尝试使用时间戳而不是 Date 对象。它比字符串/对象更容易比较数字
标签: javascript vue.js if-statement datepicker