最近我司产品要做数据大屏,时间选择时有这样的需求,如:5分钟 | 今日 | 本周 |本月(如图),分享下用moment.js获取选择时间段的开始、结束时间

moment官网地址:http://momentjs.cn/

安装,在项目中引入moment组件,如下

npm install moment --save
import moment from 'moment'

1. 当天

getCurrentDay(){

let date = []

let start = moment().format('YYYY-MM-DD 00:00:00')

let end = moment().format('YYYY-MM-DD HH:mm:ss')

date.push(start)

date.push(end)

return date

}

2. 本周

getCurrWeekDays () {

let date = []

let weekOfday = parseInt(moment().format('d')) // 计算今天是这周第几天 周日为一周中的第一天

let start = moment().subtract(weekOfday, 'days').format('YYYY-MM-DD 00:00:00') // 周一日期

let end = moment().add(7 - weekOfday - 1, 'days').format('YYYY-MM-DD 23:59:59') // 周日日期

date.push(start)

date.push(end)

return date

}

3. 本月

getCurrMonthDays () {

let date = []

let start = moment().add('month', 0).format('YYYY-MM') + '-01'

let start_1 = moment(start).format('YYYY-MM-DD HH:mm:ss')

let end = moment(start).add('month', 1).add('days', -1).format('YYYY-MM-DD 23:59:59')

date.push(start_1)

date.push(end)

return date

}

4. 最近5分钟

getFiveMinute(){

let date = []

let end = moment().format('YYYY-MM-DD HH:mm:ss')

let start = moment(end).subtract(5, "minute").format("YYYY-MM-DD HH:mm:ss")

date.push(start)

date.push(end)

return date

}

 

Logo

前往低代码交流专区

更多推荐