当前位置: 首页 > news >正文

ElementPlus 自定义封装 el-date-picker 的快捷功能

文章目录

    • 需求
    • 分析

需求

在这里插入图片描述

分析

我们看到官网上给出的案例如下,但是不太满足我们用户想要的快捷功能,因为不太多,因此需要我们自己封装一些,方法如下
在这里插入图片描述

  1. 外部自定义该组件的快捷内容
export const getPickerOptions = () => {const shortcuts = [{text: '过去1小时',value: () => {const end = new Date()const start = new Date()start.setTime(start.getTime() - 3600 * 1000 * 1);return [start, end]},},{text: '过去4小时',value: () => {const end = new Date()const start = new Date()start.setTime(start.getTime() - 3600 * 1000 * 4);return [start, end]},},{text: '过去12小时',value: () => {const end = new Date()const start = new Date()start.setTime(start.getTime() - 3600 * 1000 * 12);return [start, end]},},{text: '昨天到今天',value: () => {const end = new Date()const start = new Date()start.setTime(start.getTime() - 3600 * 1000 * 24);return [start, end]},},{text: '最近一周',value: () => {const end = new Date()const start = new Date()start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)return [start, end]},},{text: '最近一个月',value: () => {const end = new Date()const start = new Date()start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)return [start, end]},},{text: '最近三个月',value: () => {const end = new Date()const start = new Date()start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)return [start, end]},},{text: '过去半年',value: () => {const end = new Date()const start = new Date()start.setTime(start.getTime() - 3600 * 1000 * 24 * 183);return [start, end]},},{text: '过去3年',value: () => {const end = new Date()const start = new Date()start.setTime(start.getTime() - 3600 * 1000 * 24 * 365 * 3);return [start, end]},},]return shortcuts
};
  1. 组件中导入并使用
<template>
<el-date-pickerv-model="editForm_tree.time"type="datetimerange"show-timevalue-format="YYYY-MM-DD HH:mm:ss":shortcuts="shortcuts"range-separator="到"start-placeholder="开始时间"end-placeholder="结束时间"/>
</template>
<script lang="ts" setup>
import {onBeforeUnmount,onMounted,ref,watch,watchEffect,computed,reactive,
} from 'vue';
import { getPickerOptions } from '@/utils/pickerOptions.js';const shortcuts = getPickerOptions();
</script>
http://www.lryc.cn/news/510945.html

相关文章:

  • 二百八十二、ClickHouse——删除Linux中的ClickHouse
  • c++ 命名空间使用规则
  • 从 ELK Stack 到简单 — Elastic Cloud Serverless 上的 Elastic 可观察性
  • Pandas系列|第二期:Pandas中的数据结构
  • Hadoop中MapReduce过程中Shuffle过程实现自定义排序
  • 数位dp-acwing
  • 智慧园区小程序开发制作功能介绍
  • STM32高级 物联网之Wi-Fi通讯
  • LLM预训练recipe — 摘要版
  • 波动理论、传输线和S参数网络
  • nginx-1.23.2版本RPM包发布
  • 如何用WPS AI提高工作效率
  • LabVIEW应用在工业车间
  • Elasticsearch:normalizer
  • 动态规划子序列问题系列一>等差序列划分II
  • 48页PPT|2024智慧仓储解决方案解读
  • 低代码开源项目Joget的研究——Joget8社区版安装部署
  • upload-labs关卡记录15
  • 1.使用 Couchbase 数仓和 Temporal(一个分布式任务调度和编排框架)实现每 5 分钟的增量任务
  • matrix-breakout-2-morpheus
  • 农历节日倒计时:基于Python的公历与农历日期转换及节日查询小程序
  • 【RabbitMQ的死信队列】
  • 掌握软件工程基础:知识点全面解析【chap02】
  • 公路边坡安全监测中智能化+定制化+全面守护的应用方案
  • 闲谭Scala(3)--使用IDEA开发Scala
  • Go语言反射从入门到进阶
  • 【基于rust-wasm的前端页面转pdf组件和示例】
  • ARM64 Windows 10 IoT工控主板运行x86程序效率测试
  • 开放世界目标检测 Grounding DINO
  • easegen将教材批量生成可控ppt课件方案设计