今日公司项目接口要求获取动态的上周数据,经过不断的寻找,找到此方法。
该方法使用的是Moment.js JavaScript日期处理类库
一:安装依赖
npm install moment --save
二:按需引入
import moment from "moment";
三:我们这里选择的封装成一个组件,当然也可以单个页面直接使用
// 引入 moment 时间插件
import moment from "moment";
//获取今日/昨日/本周/上周/本月/上月 时间
export default {
// 获取今日的开始结束时间
getToday() {
let obj = {
starttime: '',
endtime: ''
}
obj.starttime = moment(moment().startOf("day").valueOf()).format("YYYY-MM-DD HH:mm:ss");
obj.endtime = moment(moment().valueOf()).format("YYYY-MM-DD HH:mm:ss");
return obj
},
// 获取昨日的开始结束时间
getYesterday() {
let obj = {
starttime: '',
endtime: ''
}
obj.starttime = moment(moment().add(-1, 'days').startOf("day").valueOf()).format("YYYY-MM-DD HH:mm:ss");
obj.endtime = moment(moment().add(-1, 'days').endOf('day').valueOf()).format('YYYY-MM-DD HH:mm:ss');
return obj
},
// 获取当前周的开始结束时间
getCurrWeekDays() {
let obj = {
starttime: '',
endtime: ''
}
obj.starttime = moment(moment().week(moment().week()).startOf('week').add(1, 'days').valueOf()).format('YYYY-MM-DD HH:mm:ss')
obj.endtime = moment(moment().week(moment().week()).endOf('week').add(1, 'days').valueOf()).format('YYYY-MM-DD HH:mm:ss');
return obj
},
// 获取上一周的开始结束时间
getLastWeekDays() {
let obj = {
starttime: '',
endtime: ''
}
obj.starttime = moment(moment().week(moment().week() - 1).startOf('week').add(1, 'days').valueOf()).format('YYYY-MM-DD HH:mm:ss')
obj.endtime = moment(moment().week(moment().week() - 1).endOf('week').add(1, 'days').valueOf()).format('YYYY-MM-DD HH:mm:ss');
return obj
},
// 获取当前月的开始结束时间
getCurrMonthDays() {
let obj = {
starttime: '',
endtime: ''
}
obj.starttime = moment(moment().month(moment().month()).startOf('month').valueOf()).format('YYYY-MM-DD HH:mm:ss');
obj.endtime = moment(moment().month(moment().month()).endOf('month').valueOf()).format('YYYY-MM-DD HH:mm:ss');
return obj
},
// 获取上一个月的开始结束时间
getLastMonthDays() {
let obj = {
starttime: '',
endtime: ''
}
obj.starttime = moment(moment().month(moment().month() - 1).startOf('month').valueOf()).format('YYYY-MM-DD HH:mm:ss');
obj.endtime = moment(moment().month(moment().month() - 1).endOf('month').valueOf()).format('YYYY-MM-DD HH:mm:ss');
return obj
},
}
注意:这里'YYYY-MM-DD HH:mm:ss'只是一种格式,大家可以按照自己所需要的的格式进行设置,我使用的时候设置的'YYYY-MM-DD'!!
四:然后我们将封装的组件,放在需要的vue页面里面进行引入
import getDate from "../utils/time";
五:在按照自己的需求进行使用,这里我们是进行测试,是否获取到
created() {
// 今日开始时间
let endtime = getDate.getToday().endtime;
//今日结束时间
let starttime = getDate.getToday().starttime;
console.log("获取时间今日时间");
console.log(getDate.getToday());
console.log(starttime);
}
此方法转载于:https://blog.csdn.net/yy110621/article/details/89924757
