微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

vue中获取当前日期 , 获取当前日期所在周的日期 , 获取所选日期所在周的日期

一,获取当前日期



日报 ( {{date}} )


data(){
  return{
     date:""
   }
},mounted(){
   this.getDate()
}




methods:{
 //获取当前日期的方法
   getDate() {
     var time = new Date()
     console.log(time);
  
     var y = time.getFullYear()    //年
     var m = (time.getMonth() + 1).toString().padStart(2,'0')  //月
     var d = time.getDate().toString().padStart(2,'0')    //日
     var h = time.getHours().toString().padStart(2,'0')    //时
     var mm = time.getMinutes().toString().padStart(2,'0')   //分
     var s = time.getSeconds().toString().padStart(2,'0')     //秒

     this.date = `${y}-${m}-${d}`
  }

}

控制台打印 

页面显示 

 

二,获取当前日期所在周的日期


周报 ( {{weekFirst1}}-{{weekFirst2}} - {{weekEnd1}}-{{weekEnd2}} )




mounted() {
   this.getWeek()
}




// 获取当前日期所在周的日期
   getWeek() {
      var time= new Date()
      var timesstamp = time.getTime();
      var currenDay = time.getDay();
      var weekDates = [];

      for (var i = 0; i < 7; i++) {
        weekDates.push(new Date(timesstamp + 24 * 60 * 60 * 1000 * (i - (currenDay + 6) % 7)).toLocaleDateString()
            .replace(/\//g,'-'));
        }

      console.log(weekDates)

      //自己按需求截取
       this.weekFirst1 = weekDates[0].split('-')[1]
       this.weekFirst2 = weekDates[0].split('-')[2]
       this.weekEnd1 = weekDates[6].split('-')[1]
       this.weekEnd2 = weekDates[6].split('-')[2]

    },

控制台打印

页面显示

三, 获取所选日期所在周的日期

结合日期选择器,用户可以自己选择日期 ,所在周的日期也要跟着所选日期联动变化 

(页面刚开始显示当前日期,用第一个方法获取当前日期赋值给date,这里就不重复写了)

用的vant的日期选择器组件 

日报 ( {{date}} )
<van-icon name="arrow-down" @click="choseTime" />

周报 ( {{weekFirst1}}-{{weekFirst2}} - {{weekEnd1}}-{{weekEnd2}} )


<van-popup v-model="showPicker" position="bottom">
     
  <van-datetime-picker @cancel="showPicker = false" @confirm="onConfirm" v- 
    model="currentDate" type="date"  :min-date="minDate" :max-date="maxDate" />
           
</van-popup>






data(){

  return{
    date:"",weekFirst1:"",weekFirst2:"",weekEnd1:"",weekEnd2:"",showPicker: false,currentDate: new Date(),minDate: new Date(2020,1,1),maxDate: new Date(2131,12,30),}
}






methods:{

     //获取所选日期所在的周
      getChoseWeek(val) {
        var time= new Date(val)
        var timesstamp = time.getTime();
        var currenDay = time.getDay();
        var weekDates = [];

       for (var i = 0; i < 7; i++) {
        weekDates.push(new Date(timesstamp + 24 * 60 * 60 * 1000 * (i - (currenDay + 6) % 7)).toLocaleDateString()
            .replace(/\//g,'-'));
        }

       console.log(weekDates)

      //自己按需求截取
       this.weekFirst1 = weekDates[0].split('-')[1]
       this.weekFirst2 = weekDates[0].split('-')[2]
       this.weekEnd1 = weekDates[6].split('-')[1]
       this.weekEnd2 = weekDates[6].split('-')[2]

      },// 弹出日期选择
      choseTime() {
        this.showPicker = true
      },// 选好日期
      onConfirm(val) {
        console.log(val);

        var y = val.getFullYear()
        var m = (val.getMonth() + 1).toString().padStart(2,'0')
        var d = val.getDate().toString().padStart(2,'0')
        this.date = `${y}-${m}-${d}`
        this.showPicker = false

      //调用方法,把选好的日期传过去
        this.getChoseWeek(val)
      },}

页面效果 (所在周的日期会根据所选的日期联动变化)

 

  

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐