动态设置el-date-picker的可选日期范围picker-options
时间: 2023-11-03 15:57:16 浏览: 99
动态设置el-date-picker的可选日期范围可以通过设置picker-options中的disableDate属性来实现。具体的实现方法是,在change事件中动态改变picker-options中的disableDate属性,使其返回需要禁用的日期列表。
相关代码示例:
```javascript
<template>
<el-date-picker
v-model="date"
:picker-options="pickerOptions"
@change="updateDisableDates"
></el-date-picker>
</template>
<script>
export default {
data() {
return {
date: '',
pickerOptions: {
disableDate: date => {
// 返回需要禁用的日期列表
const disabledDates = [
new Date('2021-01-01'),
new Date('2021-01-02'),
new Date('2021-01-03')
];
return disabledDates.some(disabledDate =>
this.isSameDay(date, disabledDate)
);
}
}
};
},
methods: {
updateDisableDates() {
// 动态修改picker-options中的disableDate属性
this.pickerOptions.disableDate = date => {
const disabledDates = [
new Date('2021-02-01'),
new Date('2021-02-02'),
new Date('2021-02-03')
];
return disabledDates.some(disabledDate =>
this.isSameDay(date, disabledDate)
);
};
},
isSameDay(date1, date2) {
// 判断两个日期是否是同一天
return (
date1.getFullYear() === date2.getFullYear() &&
date1.getMonth() === date2.getMonth() &&
date1.getDate() === date2.getDate()
);
}
}
};
</script>
```
以上代码中,我们通过在change事件中动态修改picker-options中disableDate属性的方法来实现动态设置el-date-picker的可选日期范围。在最初的picker-options中,我们设置了一些初始的禁用日期,然后在change事件中更新了disableDate属性的值,使其返回新的禁用日期列表。
阅读全文