const oneDaySeconds = 3600 * 1000 * 24

pickerOptions: {
  shortcuts: [
    {
      text: '今天',
      onClick(picker) {
        const date = new Date()
        const end = date
        const start = date.getTime() - oneDaySeconds
        picker.$emit('pick', [start, end])
      }
    },
    {
      text: '昨天',
      onClick(picker) {
        const date = new Date()
        const end = date.getTime() - oneDaySeconds
        const start = date.getTime() - oneDaySeconds * 2
        picker.$emit('pick', [start, end])
      }
    },
    {
      text: '本周',
      onClick(picker) {
        const date = new Date()
        const weekday = date.getDay() || 7
        const end = date.getTime()
        date.setDate(date.getDate() - weekday + 1)
        const start = date.getTime()
        picker.$emit('pick', [start, end])
      }
    },
    {
      text: '上周',
      onClick(picker) {
        const date = new Date()
        const weekday = date.getDay() || 7
        date.setDate(date.getDate() - weekday + 1)
        const end = date.getTime()
        date.setDate(date.getDate() - 7)
        const start = date.getTime()
        picker.$emit('pick', [start, end])
      }
    },
    {
      text: '最近一周',
      onClick(picker) {
        const date = new Date()
        const end = date
        const start = date.getTime() - oneDaySeconds * 7
        picker.$emit('pick', [start, end])
      }
    },
    {
      text: '本月',
      onClick(picker) {
        const date = new Date()
        const end = date.getTime()
        date.setDate(1)
        const start = date.getTime()
        picker.$emit('pick', [start, end])
      }
    },
    {
      text: '上月',
      onClick(picker) {
        const date = new Date()
        date.setDate(1)
        const end = date.getTime() - oneDaySeconds
        const start = end - oneDaySeconds * 30
        picker.$emit('pick', [start, end])
      }
    },
    {
      text: '最近一个月',
      onClick(picker) {
        const date = new Date()
        const end = date
        const start = date.getTime() - oneDaySeconds * 30
        picker.$emit('pick', [start, end])
      }
    },
    {
      text: '最近三个月',
      onClick(picker) {
        const date = new Date()
        const end = date
        const start = date.getTime() - oneDaySeconds * 90
        picker.$emit('pick', [start, end])
      }
    }
  ]
}

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-12
  • 2021-04-30
  • 2021-04-27
  • 2022-12-23
  • 2022-03-10
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-02
  • 2021-07-22
  • 2022-12-23
  • 2021-09-24
  • 2021-11-30
相关资源
相似解决方案