vue3 el-date-picker 需求是想既可以输入,也可以选择, 且开始时间不能大于结束时间, 当不符合条件时border变成红色

vue3 el-date-picker 需求是想既可以输入,也可以选择, 且开始时间不能大于结束时间, 当不符合条件时border变成红色

html 复制代码
<template>
  <div class="date-picker-group">
    <el-date-picker
      v-model="startDate"
      type="date"
      placeholder="开始时间"
      :class="{ 'is-error': startDateError }"
      editable
      format="YYYY-MM-DD"
      value-format="YYYY-MM-DD"
      @change="handleDateChange"
    />
    <span class="line">-</span>
    <el-date-picker
      v-model="endDate"
      type="date"
      placeholder="结束时间"
      :class="{ 'is-error': endDateError }"
      editable
      format="YYYY-MM-DD"
      value-format="YYYY-MM-DD"
      @change="handleDateChange"
    />
  </div>
</template>

<script setup>
import { ref } from 'vue'
const startDate = ref('')
const endDate = ref('')
const startDateError = ref(false)
const endDateError = ref(false)

const handleDateChange = () => {
  if (!startDate.value || !endDate.value) {
    startDateError.value = false
    endDateError.value = false
    return
  }
  const isValid = new Date(startDate.value) <= new Date(endDate.value)
  startDateError.value = !isValid
  endDateError.value = !isValid
}
</script>

<style scoped>
.date-picker-group {
  display: flex;
  align-items: center;
  gap: 10px;
}
.line {
  margin: 0 5px;
  color: #999;
}

:deep(.el-date-editor.el-input.is-error),
:deep(.el-date-editor.el-input__wrapper) {
  border: 1px solid #f56c6c !important;
}
</style>
相关推荐
谭光志5 小时前
Vibe Coding 时代,程序员该何去何从
前端·后端·ai编程
仿生狮子7 小时前
别再说“全栈”了,AI 时代团队只认这 5 种人
前端·人工智能·后端
kyriewen7 小时前
AI 写的 React 组件,合并前必查的 6 个坏味道——每个都有代码对比
前端·javascript·react.js
Highcharts.js7 小时前
软件开发公司为什么选择 Highcharts?
前端·前端框架·echarts·数据可视化·技术选型·highcharts·图表工具
多加点辣也没关系7 小时前
JavaScript|第13章:原始类型的方法
开发语言·javascript·ecmascript
এ慕ོ冬℘゜7 小时前
深入理解 JavaScript 事件体系:Window、鼠标与键盘事件详解
开发语言·javascript·okhttp
阿祖zu8 小时前
企业 AI 转型之痛,个人提效十倍不止,组织效率仍止步不前?
前端·aigc·agent
摇滚侠9 小时前
SpringBoot3+Vue3 全套视频教程 45-51
前端·javascript·vue.js
酸梅果茶9 小时前
【6】lightning_lm项目-LIO 前端 -点云预处理模块
前端·slam
触底反弹9 小时前
🔥 RAG 到底是怎么工作的?掰开揉碎了给你讲明白!
javascript·人工智能·后端