antd vue a-range-picker如何设置不能选择当前和之后的时间,包含时分秒

html 复制代码
<a-range-picker
              v-model:value="formState.reqTime"
              show-time
              format="YYYY-MM-DD HH:mm:ss"
              :disabledDate="disabledDate"
              :disabledTime="disabledTime"
              :placeholder="['开始时间', '结束时间']"
              style="width: 382px"
              separator="-"
            >
            </a-range-picker>
javascript 复制代码
import dayjs from 'dayjs';
setup() {
 const disabledDate = current => {
      return current && current > dayjs().endOf('day');
    };
    const range = (start, end) => {
      const result = [];
      for (let i = start; i < end; i++) {
        result.push(i);
      }
      return result;
    };
    function disabledTime(dates, partial) {
      const hours = dayjs().hour();
      const minutes = dayjs().minute();
      const seconds = dayjs().second();
      if (!dates) {
        dates = dayjs();
      }
      if (partial == 'start') {
        if (dates[0] && dayjs(dates[0]).date() === dayjs().date()) {
          if (dayjs(dates[0]).hour() === dayjs().hour()) {
            return {
              disabledHours: () => range(hours + 1, 24),
              disabledMinutes: () => range(minutes + 1, 60),
              disabledSeconds: () => range(seconds + 1, 60)
            };
          } else {
            return {
              disabledHours: () => range(hours, 24),
              disabledMinutes: () => [],
              disabledSeconds: () => []
            };
          }
        } else {
          return {
            disabledHours: () => [],
            disabledMinutes: () => [],
            disabledSeconds: () => []
          };
        }
      } else if (partial == 'end') {
        if (dates[1] && dayjs(dates[1]).date() === dayjs().date()) {
          if (dayjs(dates[1]).hour() === dayjs().hour()) {
            return {
              disabledHours: () => range(hours + 1, 24),
              disabledMinutes: () => range(minutes + 1, 60),
              disabledSeconds: () => range(seconds + 1, 60)
            };
          } else {
            return {
              disabledHours: () => range(hours, 24),
              disabledMinutes: () => [],
              disabledSeconds: () => []
            };
          }
        } else {
          return {
            disabledHours: () => [],
            disabledMinutes: () => [],
            disabledSeconds: () => []
          };
        }
      }
    }
    return {
      disabledDate,
      disabledTime
    };
   }
相关推荐
choke2334 分钟前
[特殊字符] Python 文件与路径操作
java·前端·javascript
云飞云共享云桌面6 分钟前
高性能图形工作站的资源如何共享给10个SolidWorks研发设计用
linux·运维·服务器·前端·网络·数据库·人工智能
wqq631085515 分钟前
Python基于Vue的实验室管理系统 django flask pycharm
vue.js·python·django
Deng94520131418 分钟前
Vue + Flask 前后端分离项目实战:从零搭建一个完整博客系统
前端·vue.js·flask
威迪斯特21 分钟前
Flask:轻量级Web框架的技术本质与工程实践
前端·数据库·后端·python·flask·开发框架·核心架构
Hello.Reader1 小时前
Flink 文件系统通用配置默认文件系统与连接数限制实战
vue.js·flink·npm
wuhen_n1 小时前
JavaScript内置数据结构
开发语言·前端·javascript·数据结构
大鱼前端1 小时前
为什么我说CSS-in-JS是前端“最佳”的糟粕设计?
前端
不爱吃糖的程序媛1 小时前
Capacitor:跨平台Web原生应用开发利器,现已全面适配鸿蒙
前端·华为·harmonyos
AC赳赳老秦1 小时前
2026国产算力新周期:DeepSeek实战适配英伟达H200,引领大模型训练效率跃升
大数据·前端·人工智能·算法·tidb·memcache·deepseek