根据指定日期获取14天后的日期并保存

问题记录一:采用element-ui日期组件,实现根据指定日期获取前后天数,并更换日期列表数据

下边列表展示之后14天的日期及对应星期几
在这里插入图片描述

布局:

在这里插入图片描述

样式:

在这里插入图片描述

js代码:

点击日期控件时需处理的核心代码在这里插入图片描述
点击上一页,下一页时日期列表更换处理方法如下:
在这里插入图片描述

js所有代码如下展示:

    // 点击上一页的方法
    prevDate(){
      this.getPrev(this.datePicker,14)
    },
    // 点击下一页的方法
    nextDate(){
      this.getNext(this.datePicker,14)
    },
    // 获取14天前的日期
    getPrev(date,day){
      const newDate = new Date(date)
      newDate.setDate(newDate.getDate() - day)
      this.getDataAfter(newDate)
      this.dateTime = newDate
    },
    // 获取14天后的日期
    getNext(date,day){
      const newDate = new Date(date)
      newDate.setDate(newDate.getDate() + day)
      this.getDataAfter(newDate)
      this.dateTime = newDate
    },
    // 获取指定日期前14天数据并保存数组
    getDataBefore(date){
      this.datePicker = date
      let list = []
      for(let i = 0;i< 14;i++){
        let obj ={
          time: new Date(new Date(date).setDate((new Date(date).getDate()-i))).toLocaleDateString(),
          week:'星期' + '日一二三四五六'.charAt(new Date(new Date(date).setDate((new Date(date).getDate()-i))).getDay())
        }
        list.unshift(obj)
      }
      this.dayList = list.map(item => {
        item.time = item.time.split("/")[2]
        return item
      })
    },
    // 日期组件选择是修改dayList的值
    dateHadler(val){
      this.datePicker = val
      this.getDataAfter(val)
    },
    // 获取指定后14天的数据并将day保存数组
    getDataAfter(date) {
      this.datePicker = date
      let list = []
      for(let i = 0;i<14;i++){
        let obj ={
          time: new Date(new Date(date).setDate((new Date(date).getDate()+i))).toLocaleDateString(),
          week:'星期' + '日一二三四五六'.charAt(new Date(new Date(date).setDate((new Date(date).getDate()+i))).getDay())
        }
        list.push(obj)
      }
      this.dayList = list.map(item => {
        item.time = item.time.split("/")[2]
        return item
      })
    }
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值