下载安装

npm install moment -s
注册引用
全局方法
main.js 里面注册生成

import * as moment from 'moment'
import 'moment/locale/zh-cn' // 设置中文
Vue.prototype.$moment = moment

全局过滤器
全局过滤器实现日期格式化

// 用法:1.{{ item.time | format("YYYY-MM-DD HH:mm:ss") }}
// 用法:2. this.$moment(this.time).format("YYYY-MM-DD HH:mm:ss");
Vue.filter('format', function (input, fmtstring) {
// 使用momentjs这个日期格式化类库实现日期的格式化功能
return moment(input).format(fmtstring);
});
使用
常用相对时间
现在时间: 2022年6月22日10:24:38

// 2020-05-30 相对于现在是 2 年前

this.$moment("2020-05-30", "YYYY-MMDD").fromNow()

// 当前日期开始即:2022/06/22/00:00:00 相对于现在是 10 小时前

this.$moment().startOf('day').fromNow()

// 当前日期结束即:2022/06/22/24:00:00 相对于现在是 14 小时内
this.$moment().endOf('day').fromNow()

// 当前日期小时开始即:2022/06/22/10:00:00 相对于现在是 24 分钟前

this.$moment().startOf('hour').fromNow()

常用格式化日历时间
第二个参数 传 'days' 是天 、'month' 是月 、'year' 是年

this.$moment().subtract(30, 'days').format("YYYY-MM-DD"); // 当前时间往前推 30 天

this.$moment().subtract(10, 'days').format("YYYY-MM-DD"); // 当前时间往前推 10 天

this.$moment().subtract(3, 'days').format("YYYY-MM-DD"); // 当前时间往前推 3 天

this.$moment().subtract(1, 'days').format("YYYY-MM-DD"); // 当前时间往前推 1 天

this.$moment().calendar(); // 当前时间(今天)

this.$moment().add(1, 'days').format("YYYY-MM-DD"); // 当前时间往后推 1 天

this.$moment().add(3, 'days').format("YYYY-MM-DD"); // 当前时间往后推 3 天

this.$moment().add(10, 'days').format("YYYY-MM-DD"); // 当前时间往后推 10 天

this.$moment().add(30, 'days').format("YYYY-MM-DD"); // 当前时间往后推 30 天

常用格式化
this.$moment().format("YYYY-MM-DD") // 获取当前日期

this.$moment(value).format("YYYY-MM-DD") // 格式化指定日期 value 的格式 年-月-日

this.$moment(value).valueOf() // 获取指定日期 value 的时间戳

this.$moment(value).daysInMonth() // 获取指定日期 value 所在月的天数,不传获取当前月

this.$moment().startOf('month').weekday() // 获取当前月第一天是星期几this.$moment().format('MM') // 获取当前月份
————————————————
版权声明:本文为CSDN博主「_格鲁特宝宝」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/GrootBaby/article/details/125402968