1、安装moment
npm i moment --save
2、在main.js 挂载
import moment from 'moment'//导入文件
Vue.prototype.$moment = moment;//赋值使用this.$moment('string').format("YYYY-DD-MM")
this.$moment('2021-08-26T05:54:32.767Z').format("YYYY-DD-MM")
浏览器解析后 2021-08-26
3、使用 moment.js 进行时间加减处理
console.log(moment().format("YYYY-MM-DD HH:mm:ss")); //当前时间
console.log(moment().subtract(10, "days").format("YYYY-MM-DD"));//当前时间的前10天时间
console.log(moment().subtract(1, "years").format("YYYY-MM-DD")); //当前时间的前1年时间
console.log(moment().subtract(3, "months").format("YYYY-MM-DD")); //当前时间的前3个月时间
console.log(moment().subtract(1, "weeks").format("YYYY-MM-DD"));//当前时间的前一个星期时间
that.newDate = moment(that.Time).add(6, 'months').format('YYYY-MM-DD')//后6个月
JS把年月日时分秒字符串转成时间戳
this.time = Date.parse(new Date("2020-08-31 16:00"));
时间戳转换为天数
this.rangeDateNum = (this.time) / (1000*3600*24); //86400000
4、封装方法
/**
* 使用 moment.js 进行时间加减处理
* val 当前时间/指定之间
* type 加减处理的类型(days、years、months、weeks……)
* num 加减数量
* str 返回日期的格式
*/
export const getTempArr = (val, type, num,str) => {
let date = new Date(); //当天日期
if (val) {
date = new Date(val);//指定日期
}
let dateArray = [];
for (let i = 0; i < num; i++) {
let temp = moment(date).subtract(i, type).format(str)
dateArray.unshift(temp);
}
return dateArray
}
5、应用实例
调用方法:
this.xAxisData = this.getTempArr('2021-08-26','months', 12,'YYYY-MM-DD');//获取近12个月的日期
运行结果: