日期切换

在这里插入图片描述

组件:
<template><div class="time-picker"><el-radio-group size="small" v-model="timeType" @change="changePickerType"><el-radio-button label="hour" v-if="isShow"></el-radio-button><el-radio-button label="day"></el-radio-button><el-radio-button label="month"></el-radio-button><el-radio-button label="quarter"></el-radio-button><el-radio-button label="year"></el-radio-button></el-radio-group><el-date-picker v-if="timeType != 'year' && timeType != 'quarter'" v-model="timeList" :type="pickerType[timeType].type" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" size="small" style="width: 300px" value-format="timestamp" :clearable="false" :format="pickerType[timeType].format" @change="changeDatePicker" class="select-time" popper-class="time-popper" :default-time="['00:00:00', '23:00:00']"></el-date-picker><YearYear1 v-if="timeType == 'year'" style="width:300px" :initYear="dateValue2" @updateTimeRange="updateStatisticYear" /><QuarterTime v-if="timeType == 'quarter'" @getQuarter="getQuarter"></QuarterTime></div>
</template><script>
import YearYear1 from "@/components/YearYear1";
import QuarterTime from "@/components/QuarterTime";
export default {model: {prop: "times",event: "updatetimes",},props: {times: {type: Array,},isShow: {type: Boolean,default: true,},},components: {YearYear1,QuarterTime,},data() {return {timeType: "hour",timeList: [],yearTime: [],dateValue2: [],pickerType: {hour: {type: "datetimerange",format: "yyyy-MM-dd HH时",},day: {type: "daterange",},month: {type: "monthrange",},quarter: {type: "quarter",},year: {type: "year",},},};},methods: {changePickerType(type) {let dayType = {month: {type: "years",count: 1,},day: {type: "days",count: 3,},hour: {type: "days",count: 3,},quarter: {type: "quarter",count: 1,},year: {type: "years",count: 2,},};//   var moment = require("moment");//   const startDay = moment()//     .subtract(dayType[type].count, dayType[type].type)//     .format("YYYY-MM-DD HH:00:00");//   const endDay = moment().format("YYYY-MM-DD HH:00:00");//   this.timeList = [//     new Date(startDay).getTime(),//     new Date(endDay).getTime(),//   ];this.timeList = [];this.yearTime = this.timeList;//   this.$emit("updatetimes", this.timeList);},isNull(value) {if (value) {return false;}return true;},//获取季度子组件传回的数据getQuarter(val) {console.log("季节:", val);},// 选择年updateStatisticYear(val) {console.log("年", val);},changeDatePicker(e) {console.log("选择:", e);this.$emit("updatetimes", e);},},
};
</script><style lang="scss" scoped>
.time-picker {display: flex;
}.time-popper {.el-time-spinner {display: flex;justify-content: center;& > :nth-child(2) {display: none;}}.el-picker-panel__footer {& > :first-child {display: none;}}
}
.el-radio-group {margin-right: 10px;
}
.year-picker {line-height: 28px;
}
::v-deep .el-radio-button--small .el-radio-button__inner {height: 36px;line-height: 18px;
}
::v-deep .el-range-editor--small.el-input__inner {height: 36px;line-height: 18px;
}
::v-deep .el-range-editor--small .el-range__icon {line-height: 30px;
}
</style>
里面的年(YearYear1)和季度(QuarterTime)组件是前面分享的文章:
标题:年至年的选择仿elementui的样式、仿真elementUI的时间选择的季度选择
引入即可
使用:
<SelectTimePicker :isShow="false" @updatetimes="updatetimes"></SelectTimePicker>import SelectTimePicker from "@/components/SelectTimePicker/index.vue";
components: { SelectTimePicker },updatetimes(val) {console.log("点击:", val);
},

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

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

相关文章

【gridsample】地平线如何支持gridsample算子

文章目录 1. grid_sample算子功能解析1.1 理论介绍1.2 代码分析1.2.1 x,y取值范围[-1,1]1.2.2 x,y取值范围超出[-1,1] 2. 使用grid_sample算子构建一个网络3. 走PTQ进行模型转换与编译4. 走QAT进行模型转换与编译 实操以J5 OE1.1.60对应的docker为例 1. grid_sample算子功能解析…

Rust语法:变量,函数,控制流,struct

文章目录 变量可变与不可变变量变量与常量变量的Shadowing标量类型整数 复合类型 函数控制流if elseloop & whilefor in structstruct的定义Tuple Structstruct的方法与函数 变量 可变与不可变变量 Rust中使用let来声明变量&#xff0c;但是let声明的是不可变变量&#x…

android APP内存优化

Android为每个应用分配多少内存 Android出厂后&#xff0c;java虚拟机对单个应用的最大内存分配就确定下来了&#xff0c;超出这个值就会OOM。这个属性值是定义在/system/build.prop文件中. 例如&#xff0c;如下参数 dalvik.vm.heapstartsize8m #起始分配内存 dalvik.vm.…

Flink源码之TaskManager启动流程

从启动命令flink-daemon.sh可以看出TaskManger入口类为org.apache.flink.runtime.taskexecutor.TaskManagerRunner TaskManagerRunner::main TaskManagerRunner::runTaskManagerProcessSecurely TaskManagerRunner::runTaskManager //构造TaskManagerRunner并调用start()方法 …

Java获取路径时Class.getResource()和ClassLoader.getResource()区别

Java中取资源时&#xff0c;经常用到Class.getResource()和ClassLoader.getResource()&#xff0c;Class.getResourceAsStream()和ClassLoader().getResourceAsStream()&#xff0c;这里来看看他们在取资源文件时候的路径有什么区别的问题。 环境信息&#xff1a; 系统&#…

【插入排序】直接插入排序 与 希尔排序

目录 1. 排序的概念&#xff1a; 2.插入排序基本思想 3.直接插入排序 4.希尔排序 1. 排序的概念&#xff1a; 排序&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递减的排列起来的操作。 稳定性&#xf…

【ECharts】树图

将3级改成4级 demo上是3层&#xff0c;如何实现4层。 initialTreeDepth: 4

竞赛项目 深度学习图像风格迁移

文章目录 0 前言1 VGG网络2 风格迁移3 内容损失4 风格损失5 主代码实现6 迁移模型实现7 效果展示8 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习图像风格迁移 - opencv python 该项目较为新颖&#xff0c;适合作为竞赛课题…

微服务间消息传递

微服务间消息传递 微服务是一种软件开发架构&#xff0c;它将一个大型应用程序拆分为一系列小型、独立的服务。每个服务都可以独立开发、部署和扩展&#xff0c;并通过轻量级的通信机制进行交互。 应用开发 common模块中包含服务提供者和服务消费者共享的内容provider模块是…

程序员怎么利用ChatGPT解放双手=摸鱼?

目录 1. 当你遇到问题时为你生成代码ChatGPT 最明显的用途是根据查询编写代码。我们都会遇到不知道如何完成任务的情况&#xff0c;而这正是人工智能可以派上用场的时候。例如&#xff0c;假设我不知道如何使用 Python 编写 IP 修改器&#xff0c;只需查询 AI&#xff0c;它就…

【每日一题】1572. 矩阵对角线元素的和

【每日一题】1572. 矩阵对角线元素的和 1572. 矩阵对角线元素的和题目描述解题思路 1572. 矩阵对角线元素的和 题目描述 给你一个正方形矩阵 mat&#xff0c;请你返回矩阵对角线元素的和。 请你返回在矩阵主对角线上的元素和副对角线上且不在主对角线上元素的和。 示例 1&a…

【广州华锐视点】VR燃气轮机故障判断模拟演练系统

VR燃气轮机故障判断模拟演练系统由广州华锐视点开发&#xff0c;是一款基于虚拟现实技术的教育工具&#xff0c;旨在为学生提供一个安全、高效、互动的学习环境&#xff0c;帮助他们更好地掌握燃气轮机的故障诊断技能。 这款VR实训软件能够模拟真实的燃气轮机故障诊断场景&…