element el-date-picker 禁用时间

413 阅读1分钟

需求:只能选择间隔最长30天且是过去的时间

代码

const startTime = ref('');
<el-date-picker v-model="chooseTime1" 
         @calendar-change="(e) => {
            startTime = e[0] && e[0].getTime();
            if (e[1]) {
              startTime = ''
            }
          }" 
         :disabled-date="e => {
            if (startTime !== '') {
              const one = 30 * 24 * 3600 * 1000;
              const minTime = startTime - one;
              const maxTime = startTime + one;
              return (e.getTime() > Date.now()) || (e.getTime() > maxTime) || (e.getTime() < minTime)
            } else {
              return e.getTime() > Date.now()
            }
          }"  />

calendar-change监听日历修改,然后修改disabled-date。

需求:只能选择今天之前的日期

:disabled-date="e => e.getTime() > Date.now() - 8.64e7"