antdvUI组件库中的a-date-picker - disabledDate不可选择时间的个性化出来-案例
// 限制日期不可选
disabledDate(current) {
// Can not select days before today and today
// 只能选择当前日期的两个月范围内
// return current && (current > moment().endOf('day') || current < moment().subtract(2, 'months'));
// 只能选择当前日期的前后一个月范围
// return current && (current > moment().add(1, 'months') || current < moment().subtract(1, 'months'));
// return current && current < moment().endOf('day') //当天之前的不可选,包括当天
// return current && current < moment().subtract(1, 'day') //当天之前的不可选,不包括当天
// return current > moment() // 大于当前日期不能选
// return current < moment().subtract(1, 'days') // 小于当前日期不能选
return current < moment().subtract(7, 'days') || current > moment().add(7, 'd') // 只能选前7后7
},
// 限制时间不可选
disabledDateTime() {
return {
disabledHours: () => this.range(0, 24).splice(4, 20),
disabledMinutes: () => this.range(30, 60),
disabledSeconds: () => [55, 56],
}
},
// 复杂版
disabledDateTime = (dates,partial) => {
let hours = moment().hours();//0~23
let minutes = moment().minutes();//0~59
let seconds = moment().seconds();//0~59
//当日只能选择当前时间之后的时间点
if (dates&&moment(dates[1]).date() === moment().date()&&partial=='end') {
return {
disabledHours: () => this.range(hours+1,23),
disabledMinutes: () => this.range(minutes+1,59),
disabledSeconds: () => this.range(seconds+1,59),
};
}
}
moment.js
moment常用方法:
moment().endOf('day') // 今天的23:59:59.999
moment().endOf('year') // 今年的 12 月 31 日 23:59:59.999,还可以填month,week,hour等
moment().add(1, 'months') // 当前月份加一月,如今天2021-05-25,得到就是2021-06-25
moment().add(1, 'year') // 当前年加一年,如今天2021-05-25,得到就是2022-05-25
moment().subtract(1, 'months') // 当前月份减一月,如今天2021-05-25,得到就是2021-04-25
moment().subtract(1, 'year') // 当前年减一年,如今天2021-05-25,得到就是2020-05-25
var a = moment('2021-05-18');
var b = moment('2020-04-16');
a.diff(b, 'years') // 1,b-a的年份
a.diff(b, 'days') // 2,b-a的日期
moment().date() // 25今天的日期
moment().day() // 2 今天是星期几
moment().year() // 2021 今年的年份
moment().year(2022) // 2022-05-25 设置年份为2022
案例
current < moment().subtract(7, 'days') || current > moment().add(7, 'd') // 只能选前7后7
current < moment().subtract(1, 'days') // 小于当前日期不能选
current > moment() // 大于当前日期不能选
current && current < moment().subtract(1, 'day') //当天之前的不可选,不包括当天
current && current < moment().endOf('day') //当天之前的不可选,包括当天
本文来自博客园,作者:JackieDYH,转载请注明原文链接:https://www.cnblogs.com/JackieDYH/p/17634148.html