DatePicker 日期、日期+时间选择器:

1 . 日期区间选择器 :基于type="date"类型;

格式:YYYY-MMM-DD ,2020-11-04;
预设功能:开始时间 < 结束时间;


在这里插入图片描述


Html :模板

 <div class="dateBox">
      <el-date-picker
        format="YYYY-MM-DD"
        value-format="YYYY-MM-DD"
        v-model="query.sDate"
        :disabledDate="disabledDateS"
        type="date"
        placeholder="开始日期"
      >
      </el-date-picker>
      <div style="padding: 0 10px"></div>
      <el-date-picker
        format="YYYY-MM-DD"
        value-format="YYYY-MM-DD"
        :disabledDate="disabledDateE"
        v-model="query.eDate"
        type="date"
        placeholder="结束日期"
      >
      </el-date-picker>
    </div>

JS: 功能
Vue3.0 : setup()函数

// 已引入此处为前提 import { reactive, toRefs } from "@vue/reactivity";
  setup() {
    const dateState = reactive({
      query: {
        sDate: "",
        eDate: "",
      },
      disabledDateS(value) {
        if (dateState.query.eDate) {
          if (
            new Date(value).getTime() >=
            new Date(dateState.query.eDate).getTime()
          ) {
            return true;
          }
        } else {
          return false;
        }
      },
      disabledDateE(value) {
        if (dateState.query.sDate) {
          if (
            new Date(value).getTime() <=
            new Date(dateState.query.sDate).getTime() - 86400000
          ) {
            return true;
          }
        } else {
          return false;
        }
      },
    });

    return {
      ...toRefs(dateState),
    };
  },

css: 样式

.dateBox {
  display: flex;
  align-items: center;
}

2. 日期+时间区间选择器 : 基于type="datetime"类型

格式:YYYY-MM-DD HH:mm:ss ,2021-12-14 02:00:02;
预设功能:
1.开始日期 < 结束日期;
2.如果:同一日期的开始时间点选择>结束时间时间点 :则纠正操作选择将开始与结束变量取同一个值

在这里插入图片描述

Html :模板

 <div class="Date">
     <el-date-picker
         format="YYYY-MM-DD HH:mm:ss"
         value-format="YYYY-MM-DD HH:mm:ss"
         v-model="query.sDate"
         @change="checkTimeS"
         :disabledDate="disabledDateS"
         type="datetime"
         popper-class="DateAll"
         placeholder="开始日期"
     ></el-date-picker>
     <span>-</span>
     <el-date-picker
         format="YYYY-MM-DD HH:mm:ss"
         value-format="YYYY-MM-DD HH:mm:ss"
         :disabledDate="disabledDateE"
         v-model="query.eDate"
         @change="checkTimeE"
         type="datetime"
         popper-class="DateAll"
         placeholder="结束日期"
     ></el-date-picker>
 </div>

JS: 功能
Vue3.0 : setup()函数

setup(){
	const tableState = reactive({
	 	query: {
               sDate: "",
               eDate: ""
           },
		disabledDateS(value) {
	       if (tableState.query.eDate) {
	            if (
	                new Date(value).getTime() >=
	                new Date(tableState.query.eDate).getTime()
	            ) {
	                return true;
	            }
	        } else {
	            return false;
	        }
	    },
	    disabledDateE(value) {
	        if (tableState.query.sDate) {
	            if (
	                new Date(value).getTime() <=
	                new Date(tableState.query.sDate).getTime() - 86400000
	            ) {
	                return true;
	            }
	        } else {
	            return false;
	        }
	    },
	     checkTimeS(value) {
                if (tableState.query.eDate && value) {
                    if (
                        new Date(value).getTime() >=
                        new Date(tableState.query.eDate).getTime()
                    ) {
                        tableState.query.sDate = tableState.query.eDate;
                    }
                }
            },
            checkTimeE(value) {
                 if (tableState.query.sDate && value) {
                    if (
                        new Date(value).getTime() <
                        new Date(tableState.query.sDate).getTime()
                    ) {
                        tableState.query.eDate = tableState.query.sDate;
                    }
                }
            },
	  })
	return {
	...toRefs(tableState)
	}
}

3 . format: 格式表格参考;

format: 格式参考

FormatOutput
YY18
YYYY2018
M1-12
MM01-12
MMMJan-Dec
MMMMJanuary-December
D1-31
DD01-31
d0-6
ddSu-Sa
dddSun-Sat
ddddSunday-Saturday
H0-23
HH00-23
h1-12
hh01-12
m0-59
mm00-59
s0-59
ss00-59
SSS000-999
Z+05:00
ZZ+0500
AAM PM
aam pm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值