el-date-picker日期时间选择器限制可选的日期范围

业务场景:需要限制日期时间选择器可选择的日期,有两种模式,

一种是已知范围,只能选已知范围内的日期,

另一种是知道最近天数,只能选今天往前的天数内的日期,超出不能选。

html 复制代码
<el-date-picker 
  v-model="formData.getTime" 
  :disabledDate="disabledDateOptions"
  type="datetime" :clearable="false"
  @change="changeDateTime"
  format='YYYY-MM-DD HH:mm'
  value-format="YYYY-MM-DD HH:mm:ss"
  placeholder="采集时间"/>
javascript 复制代码
disabledDateOptions: (date) => {
        if (state.modeChoice == '1') {
          // 时间范围模式 例如在"2023-11-16"到"2024-01-04"这段期间可以选,否则不可以选
          const startDate = new Date(moment("2023-11-16").format('YYYY-MM-DD 00:00:00'));
          const endDate = new Date(moment("2024-01-04").format('YYYY-MM-DD 23:59:59'));
          return date.getTime() < startDate.getTime() || date.getTime() > endDate.getTime();
        } else {
          // 最近天数模式 例如state.timedays = 3, 那就是从今天起3天前的可以选,其他日期不能选
          return date.getTime() > Date.now() || date.getTime() < Date.now() - 24 * 60 * 60 * 1000 * state.timedays
        }
}
相关推荐
是上好佳佳佳呀10 分钟前
【前端(十三)】JavaScript 数组与字符串笔记
前端·javascript·笔记
巴沟旮旯儿10 分钟前
vite项目配置文件和打包
前端·设计模式
彩票管理中心秘书长19 分钟前
Pinia 插件架构与组合式函数:如何让你的 Store 长出“超能力”
前端
彩票管理中心秘书长21 分钟前
Pinia 比 Vuex 强在哪?我用同一个模块写了两种实现,你自己看
前端
yingyima22 分钟前
用 Cron 加 Webhook 打通自动化工作的任督二脉
前端
JackieDYH23 分钟前
CSS Flexbox 与 Grid 的默认行为-布局的底层机制
前端·css·html
彩票管理中心秘书长24 分钟前
E2E测试入门:别让用户帮你点鼠标了,找个机器人替你打工吧
前端
菜蒙爱学习26 分钟前
【Markdown】可用的所有 HTML 标准颜色
前端·html
里欧跑得慢31 分钟前
CSS 嵌套:编写更优雅的样式代码
前端·css·flutter·web
里欧跑得慢32 分钟前
CSS变量与自定义属性详解
前端·css·flutter·web