开始时间大于结束时间

1.dom中代码,监听所选日期值的变化,并把需要比较的时间字段作为参数传到监听方法中,

c 复制代码
<el-form-item label="起始日期" prop="startTime">
            <el-date-picker clearable size="small"
                            :disabled="isDisable"
                            v-model="form.startTime"
                            type="date"
                            value-format="yyyy-MM-dd"
                            @change="checkTime(form.startTime,form.expirationTime,form.signingTime,'start')"
                            :placeholder="isDisable? '':'选择起始日期'">
            </el-date-picker>
          </el-form-item>
          <el-form-item label="终止日期" prop="expirationTime">
            <el-date-picker clearable size="small"
                            :disabled="isDisable"
                            v-model="form.expirationTime"
                            type="date"
                            value-format="yyyy-MM-dd"
                            @change="checkTime(form.startTime,form.expirationTime,form.signingTime,'expiration')"
                            :placeholder="isDisable? '':'选择终止日期'">
            </el-date-picker>
          </el-form-item>
          <el-form-item label="签订时间" prop="signingTime">
            <el-date-picker clearable size="small"
                            :disabled="isDisable"
                            v-model="form.signingTime"
                            type="date"
                            value-format="yyyy-MM-dd"
                            @change="checkTime(form.startTime,form.expirationTime,form.signingTime,'signing')"
                            :placeholder="isDisable? '':'选择签订时间'">
            </el-date-picker>
          </el-form-item>

2.时间比较逻辑处理

c 复制代码
 //时间判断
      checkTime(startTime, expirationTime,signingTime, type) {
       /* if (startTime == '' || startTime == null || startTime == undefined) {
          return;
        }
        if (expirationTime == '' || expirationTime == null || expirationTime == undefined) {
          return;
        }
        if (signingTime == '' || signingTime == null || signingTime == undefined) {
          return;
        }*/
        if (startTime > expirationTime) {
          this.$modal.msgWarning("开始时间应小于终止时间!");
          if (type == 'start') {
            this.$set(this.form, 'startTime', '');
          } else if (type == 'expiration') {
            this.$set(this.form, 'expirationTime', '');
          }
        }
        if (startTime < signingTime) {
          this.$modal.msgWarning("开始时间应大于或等于签订时间!");
          if (type == 'start') {
            this.$set(this.form, 'startTime', '');
          }else if (type == 'signing') {
            this.$set(this.form, 'signingTime', '');
          }
        }
      },

二.当比较的是form表单中数组中循环的两个时间时,用以下方法

1.dom中监听日期值的变化 @change="checkTime()"

c 复制代码
 //本次读数时间必须大于上次读数时间
      checkTime() {
        this.form.readings.forEach(item => {
          if (item.readingTime < item.scdssj) {
            this.$modal.msgError("本次读数时间应大于上次读数时间!");
            item.readingTime = ''; // 清空本次读数所选日期
          }
        });
      },
相关推荐
程序员吕洞宾9 分钟前
开源多维表格SmartTable V1.6.1:工作流画布,让自动化工作流配置更直观、更方便
java·开源·自动化
我登哥MVP14 分钟前
走进 Gang of Four 设计模式:访问者模式
java·设计模式·访问者模式·原型模式
雪碧聊技术17 分钟前
一文深入理解 Java 函数式编程思想
java·函数式编程
AIGS00121 分钟前
突破语义鸿沟:从向量空间JBoltAI看企业大脑构建逻辑
java·大数据·人工智能·人工智能ai大模型应用
琢磨先生David26 分钟前
OpenJDK 与 Oracle JDK 完整区别
java
gis开发之家27 分钟前
《Vue3 从入门到大神29篇》单元测试与 E2E 测试 —— 保障 Vue3 项目的质量
前端·javascript·vue.js·单元测试·前端框架·vue3
倔强的石头10631 分钟前
企业智能设备运维管理系统:靠飞算 JavaAI,告别 Java 低效搬砖日常
java
mounter62538 分钟前
Linux 7.2 内核技术前瞻:核心 subsystems 合并与重构深度解析
linux·kernel
深盾科技_Virbox42 分钟前
软件授权工具静默安装实践
java·运维·数据库·安全·软件需求
qq_452396231 小时前
第二篇:《Jenkins 从零搭建:安装、配置与第一个 Pipeline》
java·运维·jenkins