uni-app uni-ui 微信小程序 uni-datetime-picker 时间选择组件设置start和end属性,实现时间选择限制

文章展示了如何在Vue.js应用中利用uni-datetime-picker组件,通过设置开始日期和结束日期的属性来确保完成日期在开始日期之后,反之亦然。当用户在无开始日期时选择结束日期,会将结束日期重置;同样,无结束日期选择开始日期时,开始日期也会重置。这确保了日期选择的逻辑正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 效果如图,先选择开始日期,完成日期需要在开始日期之后,先选择完成日期,开始日期需要在完成日期之前

需要用到uni-datetime-picker官方的三个属性 

代码如下


<uni-datetime-picker :border="true" v-model="formData.startTime" type="date"
 @change="changeStartTime" :start="beginStartTime" :end="beginEndTime">

</uni-datetime-picker>        
<uni-datetime-picker v-model="formData.endTime" :border="true" type="date" @change="changeEndTime"
:start="finishStartTime" :end="finishEndTime">

</uni-datetime-picker>
              
const beginStartTime = ref("1999-05-01")
const beginEndTime = ref("2029-05-01")
const finishStartTime = ref("1999-05-01")
const finishEndTime = ref("2029-05-01")
//设置初始数据
const formData = ref<any>({
    endTime: "",// 施工结束时间 yyyy-MM-dd
    startTime: "", // 施工开始时间 yyyy-MM-dd
})
const changeStartTime = (e: any) => {
    console.log(e, "e")
    //若点击开始日期,结束日期没有数据则数据还原
    if (!formData.value.endTime) {
        beginEndTime.value = "2029-05-01"
    }
    finishStartTime.value = e
}

const changeEndTime = (e: any) => {
    console.log(e, "e")
    //若点击结束日期,开始日期没有数据则数据还原
    if (!formData.value.startTime) {
        finishStartTime.value = "1999-05-01"
    }
    beginEndTime.value = e
}

这样一个能够限制选定范围的组件就ok了!

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值