封装日期时间组件

概述

该组件包含日期选择,任意时间选择、固定时间点选择。

子组件代码(date-picker.vue)

<template><div id="date_picker"><el-popover placement="top" width="322" trigger="click" ref="popover"><div class="picker"><!-- 日期选择 --><el-date-picker v-model="date" type="date" placeholder="选择日期" prefix-icon=" "></el-date-picker><!-- 任意时间点 --><el-time-picker v-model="anyTime" placeholder="任意时间" prefix-icon=" "></el-time-picker><!-- 固定时间 --><el-select v-model="fixTime" placeholder="固定时间"><el-option v-for="item in timePickerOptions" :key="item.value" :label="item.label" :value="item.value"></el-option></el-select></div><!-- 操作按钮 --><div style="text-align: end;margin-top: 10px;"><el-button type="text" @click="getCurrentTime">此刻</el-button><el-button @click="getselectedTime">确定</el-button></div><!-- 弹出层的输入框 --><el-input slot="reference" placeholder="选择日期时间" v-model="expectTime"></el-input></el-popover></div>
</template><script>
export default {data() {return {date: '',  // 日期anyTime: '', // 任意时间fixTime: '', // 固定时间expectTime: '',  // 总时间timePickerOptions: [{ value: '09:00', label: '9:00' },{ value: '12:30', label: '12:30' },{ value: '14:30', label: '14:30' },{ value: '15:30', label: '15:30' },{ value: '17:00', label: '17:00' },{ value: '18:30', label: '18:30' },{ value: '19:00', label: '19:00' },{ value: '20:30', label: '20:30' },],}},watch: {anyTime() {return this.anyTime ? this.fixTime='' : this.anyTime},fixTime() {return this.fixTime ? this.anyTime='' : this.fixTime}},methods: {// 获取此刻时间getCurrentTime() {this.date = this._timeFormatConversion(new Date(), 'yyyy-MM-dd')this.anyTime = new Date()this.expectTime = `${this.date} ${this._timeFormatConversion(this.anyTime, 'HH:mm:ss')}`this.$emit('click',this.expectTime)this.$refs.popover.doClose()},// 获取最终选定时间getselectedTime() {this.date = this._timeFormatConversion(this.date ? this.date : new Date(), 'yyyy-MM-dd')if (this.anyTime) {this.expectTime = `${this.date} ${this._timeFormatConversion(this.anyTime, 'HH:mm:ss')}`} else if (this.fixTime) {this.expectTime = `${this.date} ${this.fixTime}`} else {this.getCurrentTime()}this.$emit('click',this.expectTime)this.$refs.popover.doClose()},// 时间格式化_timeFormatConversion(time, format) {var t = new Date(time);var tf = function (i) {return (i < 10 ? '0' : '') + i};return format.replace(/yyyy|MM|dd|HH|mm|ss/g, function (a) {switch (a) {case 'yyyy':return tf(t.getFullYear());break;case 'MM':return tf(t.getMonth() + 1);break;case 'mm':return tf(t.getMinutes());break;case 'dd':return tf(t.getDate());break;case 'HH':return tf(t.getHours());break;case 'ss':return tf(t.getSeconds());break;}})}}
}
</script><style scoped lang="scss">
#date_picker {width: 100%;
}
.el-date-editor.el-input, .el-date-editor.el-input__inner,
.el-select {width: 100px;
}
.picker {display: flex;justify-content: space-between;
}
/deep/ .el-input--prefix .el-input__inner {padding: 0 7px;
}
</style>

父组件引用

<date-picker v-model="time" @sendTime="getTime"></date-picker>import datePicker from '@/components/date-picker'components: { datePicker }// 获取预期时间
getTime(val) {this.time = valconsole.log(this.time,"this.time");
}

效果图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/241230.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

npm pnpm yarn 报错或常见问题处理集锦

各种卡死&#xff0c;报错问题处理汇总 1. npm 安装 卡死了怎么办&#xff0c;npm # 切换源 npm config set registry https://registry.npmmirror.com # 查看源 npm config get registry2. pnpm安装 卡死了怎么办 方法1&#xff1a;切换源 npx pnpm config set registry h…

时序分解 | Matlab实现CEEMDAN+PE自适应噪声完备集合经验模态分解+排列熵计算

时序分解 | Matlab实现CEEMDANPE自适应噪声完备集合经验模态分解排列熵计算 目录 时序分解 | Matlab实现CEEMDANPE自适应噪声完备集合经验模态分解排列熵计算效果一览基本介绍程序设计参考资料 效果一览 基本介绍 CEEMDANPE自适应噪声完备集合经验模态分解排列熵计算 运行环境m…

【论文阅读】Speech Driven Video Editing via an Audio-Conditioned Diffusion Model

DiffusionVideoEditing&#xff1a;基于音频条件扩散模型的语音驱动视频编辑 code&#xff1a;GitHub - DanBigioi/DiffusionVideoEditing: Official project repo for paper "Speech Driven Video Editing via an Audio-Conditioned Diffusion Model" paper&#…

Spring Boot - 利用Resilience4j-RateLimiter进行流量控制和服务降级

文章目录 Resilience4j概述Resilience4j官方地址Resilience4j-RateLimiter微服务演示Payment processorPOM配置文件ServiceController Payment servicePOMModelServiceRestConfigController配置验证 探究 Rate Limiting请求三次 &#xff0c;观察等待15秒连续访问6次 Resilienc…

Redis--Geo指令的语法和使用场景举例(附近的人功能)

文章目录 前言Geo介绍Geo指令使用使用场景&#xff1a;附近的人参考文献 前言 Redis除了常见的五种数据类型之外&#xff0c;其实还有一些少见的数据结构&#xff0c;如Geo&#xff0c;HyperLogLog等。虽然它们少见&#xff0c;但是作用却不容小觑。本文将介绍Geo指令的语法和…

情人节专属--HTML制作情人节告白爱心

💕效果展示 💕html展示 <!DOCTYPE html> <html lang="en" > <head>

云渲染效果图参数需要提前设置好吗?

有个朋友问了这么一个问题:使用云渲染&#xff0c;场景的渲染参数需要提前设置好吗&#xff1f; 对于这个情况&#xff0c;我们可以在本地自带的渲染器渲染一张小图看看效果&#xff0c;需不需要继续调试。 比如灯光&#xff0c;材质的贴合度&#xff0c;贴图是否丢失等等情况…

数字化转型之企业架构转型:从传统到现代的跨越

随着科技的飞速发展&#xff0c;数字化转型已成为企业持续发展的必由之路。企业架构转型作为数字化转型的核心组成部分&#xff0c;关乎企业的未来竞争力。本文将深入探讨企业架构转型的必要性、关键要素和实践案例&#xff0c;为企业实现数字化转型提供有益的参考。 一、企业架…

Lua 快速入门 · 教程笔记

Lua语言快速入门 教程笔记 前言1. Lua 语言介绍2. Lua 语言基础之基本语法声明变量声明方法使用 if - else使用 for使用 while 3. Lua 语言基础之表4. Lua 语言基础之数组插入元素移除元素获取表的长度全局表 5. Lua 语言面向对象之复制表的方式面向对象实现继承和重写父类方法…

MySQL 删除ibdata1时怎么恢复

标题&#xff1a;MySQL InnoDB数据恢复&#xff0c;丢失ibdata1时怎么安全恢复 废话在前&#xff1a; 恭喜你&#xff0c;当你看到这篇文章的时候&#xff0c;说明有可能 你心里已经有一万匹&#x1f40e;在奔腾了。千万不要乱删除ibdata1&#xff0c;有些博客无脑抓取、复制…

VUE 中的 v-for 和 v-if 是否可以共存

VUE 中的 v-for 和 v-if 是否可以共存 前言1、面试经2、正确回答3、总结总结&#xff1a; 前言 要成功&#xff0c;先发疯&#xff0c;头脑简单往前冲&#xff01; 三金四银&#xff0c;金九银十&#xff0c;多学知识&#xff0c;也不能埋头苦干&#xff0c;要成功&#xff0c…

【音视频原理】图像相关概念 ② ( 帧率 | 常见帧率标准 | 码率 | 码率单位 )

文章目录 一、帧率1、帧率简介2、常见帧率标准3、帧率 刷新率 二、码率1、码率简介2、码率单位 一、帧率 1、帧率简介 帧率 Frame Rate , 帧 指的是 是 画面帧 , 帧率 是 画面帧 的 速率 ; 帧率 的 单位是 FPS , Frames Per Second , 是 每秒钟 的 画面帧 个数 ; 帧率 是 动画…

米粒图像预处理-图像背景均匀化

案例背景 食品检测在国家粮食安全中拥有举足轻重的地位。随着经济全球化程度的深入&#xff0c;中国巨大的市场消费力将吸引越来越多的国际米类品牌的进入&#xff0c;国内粮食市场的竞争将会日趋激烈&#xff0c;人们越来越注重粮食的安全和品质问题&#xff0c;粮食质量检测…

SpringMVC下半篇之异常处理器及日期转换器

3.异常处理器 如果不加以异常处理&#xff0c;错误信息肯定会抛在浏览器页面上&#xff0c;这样很不友好&#xff0c;所以必须进行异常处理。 3.1.异常处理思路 系统的dao、service、controller出现都通过throws Exception向上抛出&#xff0c;最后由springmvc前端控制器交由…

自动驾驶中的坐标系

自动驾驶中的坐标系 自动驾驶中的坐标系 0.引言1.相机传感器坐标系2.激光雷达坐标系3.车体坐标系4.世界坐标系4.1.地理坐标系4.2.投影坐标系4.2.1.投影方式4.2.2.墨卡托(Mercator)投影4.2.3.高斯-克吕格(Gauss-Kruger)投影4.2.4.通用横轴墨卡托UTM&#xff08;UniversalTransve…

C-Lodop (Print)前端自定义打印控件

1.首先安装C-Lodop.exe软件&#xff0c;参考地址 Welcome to C-Lodop 2.软件下载地址 下载中心 - Lodop和C-Lodop官网主站 3.案列 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><script srchttp://19…

Python-基础篇-类与对象/面向对象程序设计

文章目录 思维导图是何物类定义类&#x1f4da; class类的成员&#x1f4da;类的继承性&#x1f4da;封装性&#x1f4da;多态性 对象面向对象&#x1f4da;创建对象&#x1f4da;销毁对象&#x1f4da; 类和对象关系必背必记专业英语学习角 思维导图 是何物 类 “类”是物以…

SqlAlchemy使用教程(四) MetaData 与 SQL Express Language 的使用

SqlAlchemy使用教程(一) 原理与环境搭建SqlAlchemy使用教程(二) 入门示例及编程步骤SqlAlchemy使用教程(三) CoreAPI访问与操作数据库详解SqlAlchemy使用教程(四) MetaData 与 SQL Express Language 的使用SqlAlchemy使用教程(五) ORM API 编程入门 四、Database MetaData 与 S…

WebRTC视频会议/视频客服系统EasyRTC进入会议室密码验证的开发与实现

基于WebRTC技术的EasyRTC视频会议系统&#xff0c;建设目标是让用户随时随地、快捷方便地进行视频会议&#xff0c;并根据行业需求有针对性地提供多样化、个性化功能&#xff0c;该系统是覆盖全球的实时音视频开发平台&#xff0c;支持一对一、一对多等视频通话&#xff0c;极大…

上门服务系统|上门服务小程序|上门服务系统的发展趋势

在现代社会&#xff0c;人们的生活节奏越来越快&#xff0c;对于更加便捷的服务需求也随之增加。正是基于这一背景&#xff0c;上门服务系统应运而生&#xff0c;并且迅速发展壮大。那么&#xff0c;上门服务系统的发展趋势又是怎样的呢&#xff1f; 首先&#xff0c;上门服务系…