温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Vue如何实现点击时间获取时间段查询功能

发布时间:2021-04-23 12:59:24 来源:亿速云 阅读:403 作者:小新 栏目:web开发

这篇文章将为大家详细讲解有关Vue如何实现点击时间获取时间段查询功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

vue是什么

Vue是一套用于构建用户界面的渐进式JavaScript框架,Vue与其它大型框架的区别是,使用Vue可以自底向上逐层应用,其核心库只关注视图层,方便与第三方库和项目整合,且使用Vue可以采用单文件组件和Vue生态系统支持的库开发复杂的单页应用。

效果图如下

Vue如何实现点击时间获取时间段查询功能

html代码

<template>
<div class="personalReport_time">
   <input type="date" :max="this.endTime" value="" v-model="startTime"/>
   <div></div>
   <input type="date" :min="startTime" :max="this.maxTime" v-model="endTime"/>
  </div>
  <ul class="personalReport_date">
   <li @click="query('today')">今天</li>
   <li @click="query('yesterday')">昨天</li>
   <li @click="query('weeks')">本周</li>
   <li @click="query('lastWeek')">上周</li>
   <li @click="query('month')">本月</li>
   <li @click="query('lastMonth')">上月</li>
  </ul>
  <div>
   <button @click="query" class="but">查询</button>
  </div>
  </template>

vue.js代码 点击事件

//获取时间、
//时间解析;
  Time:function(now)  {
  let year=new Date(now).getFullYear();
  let month=new Date(now).getMonth()+1;
  let date=new Date(now).getDate();
  if (month < 10) month = "0" + month;
  if (date < 10) date = "0" + date;
  return  year+"-"+month+"-"+date
 },
  //本周第一天;
  showWeekFirstDay:function()
 {
  let Nowdate=new Date();
  let WeekFirstDay=new Date(Nowdate-(Nowdate.getDay()-1)*86400000);
  let M=Number(WeekFirstDay.getMonth())+1;
  if(M<10){
   M="0"+M;
  }
  let D=WeekFirstDay.getDate();
  if(D<10){
   D="0"+D;
  }
  return WeekFirstDay.getFullYear()+"-"+M+"-"+D;
 },
  //本周最后一天
  showWeekLastDay:function ()
 {
  let Nowdate=new Date();
  let WeekFirstDay=new Date(Nowdate-(Nowdate.getDay()-1)*86400000);
  let WeekLastDay=new Date((WeekFirstDay/1000+6*86400)*1000);
  let M=Number(WeekLastDay.getMonth())+1;
  if(M<10){
   M="0"+M;
  }
  let D=WeekLastDay.getDate();
  if(D<10){
   D="0"+D;
  }
  return WeekLastDay.getFullYear()+"-"+M+"-"+D;
 },
  //获得某月的天数:
  getMonthDays:function (myMonth){
  let monthStartDate = new Date(new Date().getFullYear(), myMonth, 1);
  let monthEndDate = new Date(new Date().getFullYear(), myMonth + 1, 1);
  let  days  =  (monthEndDate  -  monthStartDate)/(1000  *  60  *  60  *  24);
  return  days;
 },
//点击事件
query:function (way) {
   let self=this;
   this.$refs.pag.currentPage=1;
   this.page=this.$refs.pag.currentPage;
   switch (way){
    case 'today':
     this.startTime=this.maxTime;
     this.endTime=this.maxTime;
     break;
    case 'yesterday':
     this.startTime=this.Time(new Date().getTime()-24*60*60*1000);
     this.endTime=this.Time(new Date().getTime()-24*60*60*1000);
     break;
    case 'weeks':
     this.startTime=this.showWeekFirstDay();
     this.endTime=this.maxTime;
     break;
    case 'lastWeek':
     this.startTime=this.Time(new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate()-new Date().getDay()-6));
     this.endTime=this.Time(new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate()+(6-new Date().getDay()-6)));
     break;
    case 'month':
     this.startTime=this.Time(new Date(new Date().getFullYear(), new Date().getMonth(),1));
     this.endTime=this.maxTime;
     break;
    case 'lastMonth':
     this.startTime=this.Time(new Date(new Date().getFullYear(),new Date().getMonth()-1,1));
     this.endTime=this.Time(new Date(new Date().getFullYear(),new Date().getMonth()-1,this.getMonthDays(new Date().getMonth()-1)));
     break;
   }
   this.$axios({
    method:'post',
    url:'/inter/user/queryMemberReport',
    data:{
     'account':this.account,
     'baseLotteryId':this.lottersId,
     'startTime':this.startTime,
     'endTime':this.endTime
    }
   }).then(function (data) {
//    console.log(data)
   }).catch(function (error) {
    console.log(error);
   })
  }

这样一个点击查询时间段效果就可以实现了。

关于“Vue如何实现点击时间获取时间段查询功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

vue
AI