当我们使用vue框架进行前端开发时,常见的需求包括,查询和列表展示
设想这样一个使用场景:我们需要根据日期区间去查询数据,而当我们进入一个页面时,这个页面已经有默认的检索条件,我们的任务是——设置时间检索条件为最近30天
这里我将我的做法分享给大家:

  1. HTML结构中使用v-model绑定。
<el-date-picker v-model="beginTime" type="date" placeholder="请选择开始日期" value-format="yyyy-MM-dd" ></el-date-picker>
<el-date-picker v-model="endTime" type="date" placeholder="请选择结束日期" value-format="yyyy-MM-dd" ></el-date-picker>
  1. 逻辑部分和数据绑定部分。
    **思路:**①使用Date对象获取当前时间,使用Date对象方法分别获取年/月/日,并进行拼接展示。此时可以得到指定格式的当前日期。②用setDate方法,设置30天前的日期。③判断30天前月份是否是个位数,是则补零。
data() {
    let nowDate = new Date();
    let date = {
      year: nowDate.getFullYear(),
      month: nowDate.getMonth() + 1,
      date: nowDate.getDate(),
    };
	// 当前日期
    let systemDate = date.year + "-" + date.month + "-" + date.date;
    
    var beforedate = new Date(nowDate);
    beforedate.setDate(nowDate.getDate() - 30);
    // 30天前
    let systemDateBegin = `${beforedate.getFullYear()}-${beforedate.getMonth() + 1<10?`0${beforedate.getMonth() + 1}`:beforedate.getMonth() + 1}-${beforedate.getDate()}`;
    return {
      beginTime: systemDateBegin,
      endTime: systemDate
      }
}
  1. 最终页面的展示效果。
    在这里插入图片描述
    以上是作者采用的方法,如有不足之处,欢迎交流~~

版权声明:本文为weixin_46557501原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_46557501/article/details/113540626