Vue3 elementUI如何修改el-date-picker默认时间

目录
  • elementUI修改el-date-picker默认时间
  • el-date-picker设置默认时间区间
    • 需求
    • 代码和注释如下

elementUI修改el-date-picker默认时间

HTML:

<el-date-picker
   v-model="dateValue"
   type="daterange"
   size="small"
   unlink-panels
   range-separator="至"
   start-placeholder="开始日期"
   end-placeholder="结束日期"
   :shortcuts="shortcuts">
</el-date-picker>

JS:

//放在页面的state中
shortcuts: [
        {
          text: "本周",
          value: () => {
            const end = new Date();
            const start = new Date();
            //周日算第一天,如果周日查询本周的话,天数是0,所有如果是0,默认设置为7,处理当前周
            const nows = start.getDay() || 7; 
            start.setTime(start.getTime() - 3600 * 1000 * 24 * (nows - 1));
            end.setTime(end.getTime() - 3600 * 1000 * 24 * (nows - 7));
            console.log(start, end, "end");
            return [start, end];
          },
        },
        {
          text: "本月",
          value: () => methods.getTime(),
        },
        {
          text: "上月",
          value: () => {
            const oDate = new Date();
            let year = oDate.getFullYear();
            let month = oDate.getMonth();
            let start, end;
            if (month == 0) {
              year--;
              start = new Date(year, 11, 1);
              end = new Date(year, 11, 31);
            } else {
              start = new Date(year, month - 1, 1);
              end = new Date(year, month, 0);
            }
            return [start, end];
          },
        },
      ],

处理本月的函数:

      // 获取本月时间段datePicker使用
      getTime() {
        const oDate = new Date();
        let year = oDate.getFullYear();
        let month = 0//oDate.getMonth();
        let start, end;
        if (month == 0) {
          year--;
          start = new Date(year, 0, 1);
          end = new Date(year, 12, 31);
        } else {
          start = new Date(year, month, 1);
          end = new Date(year, month + 1, 0);
        }
        state.dateValue = [start, end];
        return [start, end];
      },

el-date-picker设置默认时间区间

需求

需要一进页面时,把日期选择器,默认展示为2012-01-01至当前日期-1天

即图:

代码和注释如下

2.1

<el-form-item label="时间周期:" prop="timeCycle" >
      <el-date-picker
         v-model="createForm.timeCycle"
         type="datetimerange"
         :picker-options="pickerOptions" //快捷时间选择的函数
         range-separator="至"
         start-placeholder="开始日期"
         end-placeholder="结束日期"
         value-format="yyyy-MM-dd" //默认值为这种格式
       >
      </el-date-picker>
</el-form-item>

2.2

由于开始时间是固定的,所以需要在定义数据时定义好,结束时间不能不填,也不能是" ",也不能是不符合时间格式的,否则整个时间选择器都不会展示了

  data(){
     return {
        createForm: {
          timeCycle:["2012-01-01","2012-01-01"]
        }
     }
   }

2.3

在页面一加载时,在created函数里把结束时间算好,然后赋值到定义的timeCycle数组的第二项

created(){
      const end = new Date();//获取当前的日期
      end.setTime(end.getTime() - 3600 * 1000 * 24 )
      //计算,将当期日期-1天
      //此时得到的是中国标准时间,格式不是yyyy-MM-dd,需要用dateFormat这个函数转换下
      this.createForm.timeCycle[1]=this.dateFormat(end)
      //将转换完的正确格式的结束时间赋值到timeCycle数组的第二项
  }

2.4

时间格式的转换函数

中国标准时间,即,例如:Wed Oct 24 2018 20:00:00 GMT+0800

转换为:yyyy-MM-dd格式,即:2018-10-24

 methods:{
   dateFormat(dateData) {
      var date = new Date(dateData)
      var y = date.getFullYear()
      var m = date.getMonth() + 1
      m = m < 10 ? ('0' + m) : m
      var d = date.getDate()
      d = d < 10 ? ('0' + d) : d
      const time = y + '-' + m + '-' + d
      return time
    }
 }

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • vue element-ui el-date-picker限制选择时间为当天之前的代码

    vue element-ui el-date-picker限制选择时间为当天之前的代码 <el-date-picker v-model="firstdate" :picker-options="pickerOptions0" type="daterange" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间&

  • element-ui 限制日期选择的方法(datepicker)

    Element-UI是饿了么前端团队推出的一款基于Vue.js 2.0 的桌面端UI框架,手机端有对应框架是 Mint UI . 需求场景如下: 指定起止日期,后选的将会受到先选的限制 不同的日期选择器,不过也存在关联关系 实现方法不难,利用了 change 事件,动态改变 picker-options 中的 disableDate 即可. 查看Demo Template <script src="//unpkg.com/vue/dist/vue.js"></scri

  • 解决Element中el-date-picker组件不回填的情况

    1.问题描述 当我们在实用ElementUI组件完成项目的时候可能会遇到这样的需求,比如: 新建一个活动,需要定义活动的时间范围: 因此我们在新建活动的操作过程中需要选择一段时间区间以及活动名称等信息提交,新建完成: 网页上出现了新建好的活动,其他人想查看详细信息,打开页面,发现时间区间并没有实现回填! 2.问题分析 时间信息没有回填,首先要检查,后台数据返回情况以及页面上字段信息是否有差异等细节: 如果没有以上的情况,那就是我碰到的这种情况了, 后端数据返回没有差异,而且页面字段也没有错,其他

  • 解决element DateTimePicker+vue弹出框只显示小时

    三个知识点: 1.css 后代选择器 https://www.w3school.com.cn/css/css_selector_descendant.asp 2.vue深度选择器 https://vue-loader.vuejs.org/zh/guide/scoped-css.html 3.element ui DateTimePicker 指定下拉框类名 popper-class https://element.eleme.cn/#/zh-CN/component/datetime-picke

  • Vue3 elementUI如何修改el-date-picker默认时间

    目录 elementUI修改el-date-picker默认时间 el-date-picker设置默认时间区间 需求 代码和注释如下 elementUI修改el-date-picker默认时间 HTML: <el-date-picker    v-model="dateValue"    type="daterange"    size="small"    unlink-panels    range-separator="至&

  • iOS开发中Date Picker和UITool Bar控件的使用简介

    一.Date Picker控件 1.简单介绍: Date Picker显示时间的控件 有默认宽高,不用设置数据源和代理 如何改成中文的? (1)查看当前系统是否为中文的,把模拟器改成是中文的 (2)属性,locale选择地区 如果默认显示不符合需求.时间有四种模式可以设置,在model中进行设置 时间可以自定义(custom). 设置最小时间和最大时间,超过就会自动回到最小时间. 最大的用途在于自定义键盘:弹出一个日期选择器出来,示例代码如下:    2.示例代码 复制代码 代码如下: // /

  • element-ui中的select下拉列表设置默认值方法

    element-ui中的select下拉列表如何设置默认值? 在element-ui的运用中,涉及到了select下拉列表.项目中需要将select的默认值给展示出来 那如何修改呢? 上element-ui中的代码片段 <template> <el-select v-model="value" placeholder="请选择"> <el-option v-for="item in options" :key=&qu

  • 如何修改XP 远程管理默认端口

    自Windows 2000开始,微软就提供一项终端服务(Terminal Server)这项服务可以将远程的桌面传递到本地.通过该服务,可视化的远程管理可以非常方便的实现.继Windows 2000之后,Windows XP也提供这项服务.在Windows XP 中的Terminal Server Client程序比Windows 2000中的那个有了进一步的发展,许多功能都强大了许多. Windows XP 中的Terminal Server Client程序主要的新特性有: 1)可以将目标机

  • android 默认时间格式修改方法

    在android使用中,遇到修改默认时间格式时,总是束手无策,本文将以此问题提供解决方案,需要了解的朋友可以参考下 语言为英语时,默认的时间格式为mm/DD/yyyy,请问怎么将默认时间格式修改为:DD/mm/yyyy,不知道是在framework层给初始化的还是编译的时候给的初始值,哪位大侠知道怎么该? 1.修改文件alps\frameworks\base\packages\SettingsProvider\res\values\defaults.xml 增加代码<string name=&quo

  • element-ui tooltip修改背景颜色和箭头颜色的实现

    本文介绍了element-ui tooltip修改背景颜色和箭头颜色的实现,分享给大家,具体如下: <el-tooltip class="item" effect="dark" content="分享" placement="left" popper-class="draw_share_atooltip"> <el-button> <div class="iconfo

  • Vue3+elementui plus创建项目的方法

    1.使用elementui plus版本实现按需加载组件会报错 Error: Cannot find module 'babel-preset-es2015' from 'D:\danzhukeji\danzhu\my_pp\src' 这样的情况下 { "presets": [["es2015", { "modules": false }]], "plugins": [ [ "component", { &

  • 详解如何修改jupyter notebook的默认目录和默认浏览器

    1 修改默认目录 最近刚刚开始学习Python,比较好的一个IDE就是jupyter Notebook.可以一个cell一个cell的显示结果,对于新手学习Python非常的实用. 但是有个蛋疼的地方就是,每次打开Notebook看到的都是c盘上"我的文档"上的文件.查了一些资料终于把默认路径改了. 方法如下: 1 .找到一个用于存放config文件的文件夹,用cmd来查找路径: 在cmd中 输入​命令 jupyter notebook --generate-config(前面是两个-

  • 详解基于Vue cli开发修改外部组件Vant默认样式

    前言 在引入外部组件的时候,想要修改默认样式,可以通过class修改,但一般会有权重不够等各种原因,官网其实列出了一套主题定制的方案,通过覆盖配置文件来修改样式,官网地址:主题定制 提示:以下是本篇文章正文内容,下面案例可供参考 一.Less 因为Vant 使用了 Less 对样式进行预处理,并内置了一些样式变量,可以通过替换样式变量即可定制你自己需要的主题. 给你的项目配置less: npm install less --save-dev npm install less-loader --s

  • vue如何使用swiper插件修改左右箭头的默认样式

    目录 使用swiper插件修改左右箭头的默认样式 vue中修改swiper样式问题 原因 解决方法 总结 使用swiper插件修改左右箭头的默认样式 效果图 修改箭头的背景,以及颜色 .swiper-button-prev, .swiper-button-next{ color: #fff; background: #5e5f5e; } 修改箭头的大小 .swiper-button-prev:after, .swiper-button-next:after { font-size: 14px;

随机推荐