需求 日期选择器 后端哥们说只能传今天前30天的日期包含当天日期
这不so easy
//使用 picker-options 写个函数检验一下啦
pickerOptions1: {
disabledDate: (time) => {
let tempTime = 3600 * 1000 * 24 * 30;
let timer = new Date(new Date() - 8.64e7).getTime(); //转换时间戳(当前选中的日期);
let maxTime = timer - tempTime; //前三十天可选
return time.getTime() > new Date() || time.getTime() < maxTime;
},
到这里感觉没什么毛病
调试完接口 自测点击发现当天日期没有禁用却不能触发
原因 : 当天日期获取的时间戳是现在当前时间的
处理 : 获取当天时间戳的最后一秒 这里我直接使用了dayjs
修改后的代码
//使用 picker-options 写个函数检验一下啦
pickerOptions1: {
disabledDate: (time) => {
let tempTime = 3600 * 1000 * 24 * 30;
let timer = new Date(new Date() - 8.64e7).getTime(); //转换时间戳(当前选中的日期);
let maxTime = timer - tempTime; //前三十天可选
//获取当天的最后一秒的时间戳
const endOfDayTimestamp = dayjs().endOf('day').valueOf();
return time.getTime() > endOfDayTimestamp || time.getTime() < maxTime
},
},