el-date-picker增加默认值 修改样式

news2024/11/19 11:19:17

预期效果

默认是这样的
在这里插入图片描述

但希望是直接有一个默认的当天日期,并且字体颜色啥的样式也要修改(在这里假设今天是2023/10/6
在这里插入图片描述


功能实现

踩了坑挺多坑的,特此记录
官方文档
按照官方的说明,给v-model绑定一个字符串就可以了
在这里插入图片描述


在js中获取当前时间

利用Date()来返回当天的日期,在传给v-model就可以了

因为第二种选择器有起始和结束日期,要传一个数组(包含2个元素),所以这里先定义2个时间sTime 和 eTime

let isDate = new Date();
//开始时间 start
let sTime = `${isDate.getFullYear()}-${isDate.getMonth() + 1}-${isDate.getDate()}`;

//结束时间 end
let eTime = `${isDate.getFullYear()}-${isDate.getMonth() + 1}-${ isDate.getDate() + 6}`;

//如果你的时间选择器没有精确到时分秒,就只是年月日就结束了,那么00:00:00 23:59:59 就不用加了
sTime = `${sTime} 00:00:00`;
eTime = `${eTime} 23:59:59`;
console.log("sTime", sTime);
console.log("eTime", eTime);
const tt = [sTime, eTime]; 


逐句解释

new Date()返回当前时间
在这里插入图片描述在这里插入图片描述

  • isDate.getFullYear()返回今天的年份
  • isDate.getMonth()返回今天的月份注意是从0开始,所以10月,但返回9,所以记得isDate.getMonth()+1
  • isDate.getDate()返回日期


在template中绑定

   <el-date-picker
      v-model="sTime"
      type="date"
      value-format="YYYY-MM-DD"
      format="YYYY/MM/DD"
      placeholder="请选择收拍日期"
    >
    </el-date-picker>
    <el-date-picker
      v-model="tt"
      type="daterange"
      range-separator="-"
      start-placeholder="开始时间"
      end-placeholder="结束时间"
      size="default"
      popper-class="data-picker"
      value-format="YYYY-MM-DD"
    />


出错:总显示10月1日

但是,并没有显示今天的日期,就很奇怪的显示10/01,但是获取到的sTime和 eTime都是对的

在这里插入图片描述
后来和其他栗子对比,发现正常显示的都是

在这里插入图片描述
也就是,我的日期和月份没有补零,所以才会识别错误,就默认给我绑定1号的日期(我还以为是闹鬼了,没初始化,就自己出现一个10/01



改正:月份和日期自动补零

var date = new Date();
const year = date.getFullYear();
// 注意月份从0开始,要+1
const month = (date.getMonth() + 1).toString().padStart(2, "0"); // 补零,确保两位数
const day = date.getDate().toString().padStart(2, "0"); // 同样补零
let day2 = date.getDate() + 10;
day2 = day2.toString().padStart(2, "0"); // 同样补零

// 可以不写时间
const hour = " 00:00:00";
const collectDate1 = `${year}-${month}-${day}${hour}`;
console.log("collectDate1", collectDate1, typeof collectDate1);

const collectDate2 = `${year}-${month}-${day2}${hour}`;
console.log("collectDate2", collectDate2, typeof collectDate2);
const obj = [collectDate1, collectDate2];


 <el-date-picker
      v-model="collectDate1"
      type="date"
      value-format="YYYY-MM-DD"
      format="YYYY/MM/DD"
      placeholder="请选择收拍日期"
    >
    </el-date-picker>
    <el-date-picker
      v-model="obj"
      type="daterange"
      range-separator="-"
      start-placeholder="开始时间"
      end-placeholder="结束时间"
      size="default"
      popper-class="data-picker"
      value-format="YYYY-MM-DD"
    />


实现预期效果
在这里插入图片描述



或者日期是规定好的,就直接传字符串也行

const hh = ["2023-06-07", "2023-10-09"];

<el-date-picker
      v-model="hh"
      type="daterange"
      range-separator="-"
      start-placeholder="开始时间"
      end-placeholder="结束时间"
      size="default"
      popper-class="data-picker"
      value-format="YYYY-MM-DD"
    />

在这里插入图片描述



样式实现

在这里插入图片描述

:deep(.el-date-editor) {
  width: 300px;
  height: 60px;
  border: none;
  background-color: #e498ce;
  /* border: 3px solid rgb(47, 162, 24); */
}


:deep(.el-input__wrapper) {
  background-color: #b2ba56;
  border: 3px solid white;
}
:deep(.el-input) {
  /* border: 3px solid white; */
}
:deep(.el-icon),
:deep(.el-input__icon) {
  color: blue;
}
:deep(.el-input__inner) {
  color: rgb(206, 206, 59);
}

个别样式修改不了,就需要去掉scoped,把样式改成全局的;
还有就是在App.vue或者style中引用
在这里插入图片描述




还有一种错误,就是月份总是02,可现在明明是10月份,就很迷
在这里插入图片描述
对比代码发现,是我大小写错了
在这里插入图片描述


完善

发现上面的虽然可以显示默认,但是在日历中选择后,也不好用了,就好像数据是死的一样,所以响应式,就用ref,并且const变成let

const hh = ref(["2023-06-07", "2023-10-09"]);

var date = new Date();
let year = date.getFullYear();
// 注意月份从0开始,要+1
let month = (date.getMonth() + 1).toString().padStart(2, "0"); // 补零,确保两位数
let day = date.getDate().toString().padStart(2, "0"); // 同样补零
let day2 = date.getDate() + 10;
day2 = day2.toString().padStart(2, "0"); // 同样补零

// 可以不写时间
let hour = " 00:00:00";
let collectDate1 = ref(`${year}-${month}-${day}${hour}`);
console.log("collectDate1", collectDate1.value, typeof collectDate1.value);

let collectDate2 = `${year}-${month}-${day2}${hour}`;
console.log("collectDate2", collectDate2, typeof collectDate2);

在加入watch监听,就可以获取选择后的时间了

watch(
  () => collectDate1,
  () => {
    console.log("watch监听collectDate1", collectDate1.value);
  },
  {
    deep: true,
    immediate: true,
  }
);

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

操作符 | C语言中操作符详解 | 操作符的优先级 | 移位操作法的使用方式

一、算术操作符&#xff1a;、-、*、/、% 算术操作符其实在平时生活中&#xff0c;也遇到很多&#xff0c;并且这五类操作符基本很常见&#xff0c;而他们的作用与数学所学习的功能是一样的。但是“/”除号操作符与“%”取模操作符有些不同。下面就以这两个的操作符为主要说起…

Tomcat 介绍与 jspgou 部署

一、虚拟机简介 1、Java 虚拟机 (1) 虚拟机&#xff1a; 虚拟机&#xff08;Virtual Machine&#xff09;是一种软件或硬件实体&#xff0c;它模拟了一个独立的计算环境&#xff0c;可以在其上运行应用程序。 虚拟机可分为系统虚拟机和程序虚拟机&#xff1a; ● 系统虚拟…

Mall脚手架总结(一)——SpringSecurity实现鉴权认证

前言 在结束理论知识的学习后&#xff0c;荔枝开始项目学习&#xff0c;这个系列文章将围绕荔枝学习mall项目过程中总结的知识点来梳理。本篇文章主要涉及如何整合Spring Security和JWT实现鉴权认证的功能&#xff01;希望能帮助到一起学习mall项目的小伙伴~~~ 文章目录 前言 …

【Pytorch笔记】6.Transforms

pytorch官方文档 - transforms transforms需要使用计算机视觉工具包&#xff1a;torchvision。 torchvision.transforms&#xff1a;常用的图像预处理方法&#xff1b; torchvision.datasets&#xff1a;常用数据集的dataset实现&#xff0c;如MNIST、CIFAR-10、ImageNet等&am…

基于python编写的excel表格数据标记的exe文件

目录 一、需求&#xff1a; 二、思路&#xff1a; 三、工具 四、设计过程 &#xff08;一&#xff09;根据需要导入相关的图形界面库 &#xff08;二&#xff09;创建图形窗口 &#xff08;三&#xff09;标签设计 &#xff08;四&#xff09;方法按钮设计 &#xff0…

值得推荐的阿里巴巴Java开源项目

说明&#xff1a;以下都是项目中使用过的&#xff0c;后续将持续更新&#xff01;&#xff01;&#xff01; 1、开源 Java 诊断工具 Arthas Arthas&#xff08;阿尔萨斯&#xff09;是阿里巴巴开源的 Java 诊断工具&#xff0c;深受开发者喜爱。 Arthas 采用命令行交互模式&…

「专题速递」JPEG AI、端到端图像编码的标准化及产品落地、深度学习

从最初的追随者到如今的领跑者&#xff0c;中国的超高清视频编解码技术已经走过20年的漫长征程。从开始制定不同的视频编解码标准&#xff0c;如H.264/265、AV1、VVC、AVS&#xff0c;再到积极地探索基于AI的视频编码技术。视频编解码——这一将视频数据高效压缩、传输和解码还…

软件项目和安全项目案例(承接软件和安全项目合作)

公司有专业的软件开发团队和安全研究团队&#xff0c;具备完善的安全测试、安全培训、安全开发、安全服务等安全解决方案&#xff0c;可以助力政企研发专业、高效、安全、稳定的软件产品&#xff0c;欢迎项目咨询、商务合作&#xff01; 一、软件开发项目咨询 1.承接车载等终…

了解了spring mvc web容器中一个http请求的全过程,能给我们提升多少武力值

继上一篇文章什么&#xff0c;这年头还有人不知道404_cow__sky的博客-CSDN博客后&#xff0c;有些同学发现&#xff0c;学了之后有啥用&#xff0c;有什么实际场景可以用到吗&#xff1f;程序员就是这样&#xff0c;不习惯于纸上谈兵&#xff0c;给一个场景show me code才是最实…

免交互输入

here document 免交互 对文本内容进行操作&#xff1a; 标准输入的替代品。 语法格式 命令 <<标记 内容 标记 命令&#xff1a;linux 命令 注意事项&#xff1a; 1.标记可以使用的任意字符。(字母和数字&#xff0c;一般不适用特殊字符。以字母开EOF) 2.结尾的标记一…

PHP8中的魔术方法-PHP8知识详解

在PHP 8中&#xff0c;魔术方法是一种特殊的方法&#xff0c;它们以两个下划线&#xff08;__&#xff09;开头。魔术方法允许您定义类的行为&#xff0c;例如创建对象、调用其他方法或访问和修改类的属性。以下是一些常见的魔术方法&#xff1a; __construct(): 类的构造函数…

【LeetCode高频SQL50题-基础版】打卡第1天:第1~10题

文章目录 【LeetCode高频SQL50题-基础版】打卡第1天&#xff1a;第1~10题⛅前言 可回收且低脂的产品&#x1f512;题目&#x1f511;题解 寻找用户推荐人&#x1f512;题目&#x1f511;题解 大的国家&#x1f512;题目&#x1f511;题解 文章浏览I&#x1f512;题目&#x1f5…

【计算机组成 课程笔记】7.3 高速缓存 Cache

课程链接&#xff1a; 计算机组成_北京大学_中国大学MOOC(慕课) 7 - 5 - 705-高速缓存的工作原理&#xff08;16-00--&#xff09;_哔哩哔哩_bilibili 在【计算机组成 课程笔记】7.1 存储层次结构概况_Elaine_Bao的博客-CSDN博客中提到&#xff0c;因为CPU和内存的速度差距越来…

R语言12篇文章带您深入了解限制立方条图(Restricted cubic spline,RCS)

临床上&#xff0c;因变量和临床的结局有时候不是线性关系&#xff0c;而回归模型有一个重要的假设就是自变量和因变量呈线性关联&#xff0c;因此非线性关系模型用回归分析来拟合受到限制。因此&#xff0c;一个更好的解决方法是拟合自变量与因变量之间的非线性关系&#xff0…

SICP第三章 模块化,对象和状态

赋值和局部状态 我们可以用一个或几个状态变量刻画一个对象的状态&#xff0c;在他们之中维持有关这一对象的历史&#xff0c;即能够确定该对象当前行为的充分的信息 局部状态变量 过程 dispatch 以一个消息为输入&#xff0c;返回两个局部过程之一 引进赋值带来的利益

【Windows】Win11重置网络设置后WLAN消失

问题描述 Windows11重置网络设置后WLAN消失。 原因分析 WLAN相关服务未启动。 解决方案 Win r 打开运行 运行 services.msc 按名称排序&#xff0c;找到这两个服务 右键启动 右键打开属性&#xff0c;找到启动类型&#xff0c;改为自动 WLAN已找回

七、【套索工具组】

文章目录 套索工具多边形套索工具磁性套索工具 套索工具 如下图&#xff0c;以我们抠图为例&#xff0c;当我们选用套索工具选中一块区域后&#xff0c;然后按ShiftF5调出填充工具菜单&#xff0c;然后再选中内容识别&#xff0c;就可以去掉该区域&#xff1a; 那么如何做到加…

云盘文件批量分享脚本

前言 偶尔需要用就心血来潮做了下目前支持 百度网盘批量分享115网盘批量分享天翼云盘批量分享123盘批量分享(2023年10月05日新增)夸克网盘批量分享(2023年10月06日新增)蓝奏网盘批量分享(2023年10月06日新增)进度条展示复制到剪贴板下载分享链接分享信息自定义配置自定义提取码…

HDLbits: Edgedetect

module top_module (input clk,input [7:0] in,output [7:0] pedge );reg [7:0] in_old;always(posedge clk)beginin_old < in; end assign pedge < in & ~in_old; endmodule 对于边缘检测而言&#xff0c;若是0→1和1→0都检测则为in^in_old&#xf…

智能家电经营小程序商城的作用是什么

大小家电是人们生活所需&#xff0c;如冰箱、电脑、电视机、饮水机等&#xff0c;都有很高的市场需求度&#xff0c;传统人们购买往往是前往当地商场&#xff0c;而随着如今互联网电商深入&#xff0c;越来越多的用户选择线上消费&#xff0c;这也促进着传统家电经营商家需要转…