当前位置:主页 > 网页前端 > vue >

详解element-ui动态限定的日期范围选择器代码片段

时间:2020-11-08 12:44:26 | 栏目:vue | 点击:

何开此题

我是一个码农,缘起就是这次需求遇到了之前实现过的功能细节,不想再从头翻组件文档实现一遍,最好是直接拷贝粘贴。

细节

picker-options 设定规则:时间范围最大可选择30天, 最晚时间为今天。
element-ui 的日期选择器的组件是 el-date-picker.

设定 pickerOptions2,

 data() {
  return {
   pickerOptions2: {
    disabledDate: theDate => {
     const oneDay = 3600 * 1000 * 24

     const current = theDate.getTime()
     const now = Date.now()

     const condition1 = current > now
     if (!this.minDateTimestamp) return condition1

     const pickerRangeNum = 30

     // 时间范围最大可选择30天,最晚时间为今天
     const lastMonthBegin = this.minDateTimestamp
     const lastMonthEnd = lastMonthBegin + pickerRangeNum * oneDay

     return (
      condition1 || current < lastMonthBegin || current > lastMonthEnd
     )
    },
    onPick: ({ maxDate, minDate }) => {
     this.minDateTimestamp = minDate.getTime()
     if (maxDate) {
      this.minDateTimestamp = 0
     }
    },
   },
  }
 },

模板的设定,

<template>
<el-date-picker
 class="form-item-control"
 v-model="qo2.dateRange2"
 type="daterange"
 range-separator=" 至 "
 start-placeholder="开始日期"
 end-placeholder="结束日期"
 placeholder="请选择时间段"
 :picker-options="pickerOptions2"
/>
</template>

总结

element-ui 动态限定的日期范围选择器,再回首,不用愁。

您可能感兴趣的文章:

相关文章