背景:日期选择组件中限制可选日期的范围
目标:使用Element UI官网下表中的 disabledDate 参数来限制日期选择范围
需求:限制时间选择 3月25号 至 4月1号
picker-options | ||||
参数 | 说明 | 类型 | 可选值 | 默认值 |
shortcuts | 设置快捷选项,需要传入 {} 对象用法参考 demo 或下表 | object[] | — | — |
disabledDate | 设置禁用状态,参数为当前日期,要求返回Boolean | Function | — | — |
cellClassName | 设置日期的 className | Function(Date) | — | — |
firstDayOfWeek | 周起始日 | Number | 1到7 | 7 |
onPick | 选中日期后会执行的回调,只有当 daterange 或 datetimerange 才生效 | Function({ maxDate, minDate }) | — | — |
效果展示如下:
限定日期:3月25号 ~ 4月1号
使用细节:
1. 2022-03-25 时间戳 = 1648137600000,笔者此处简写,项目中可从变量中获取
2. disabledDate 的参数 time 是禁用时间,可以获取时间戳进行比较,筛选范围
<el-date-picker
v-model="value1"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
>
</el-date-picker>
data() {
return {
value1: '',
pickerOptions: {
disabledDate: time => {
return time.getTime() > new Date().getTime() || time.getTime() < 1648137600000
},
},
}
}