使用npm命令安装moment
npm install moment --save
在main.js文件里引用moment
// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
import Moment from 'moment'
// 定义全局时间戳过滤器
Vue.filter('formatDate', function(value) {
return Moment(value).format('YYYY-MM-DD HH:mm:ss')
})
Vue.config.productionTip = false
/* eslint-disable no-new */
new Vue({
el: '#app',
router,
components: { App },
template: '<App/>'
})
在template里使用
<div class="time">{{item.rateTime | formatDate}}</div>
常用的一些日期格式化方法
1.日期格式化
moment().format('MMMM Do YYYY, h:mm:ss a'); // 四月 16日 2019, 12:24:48 中午
moment().format('dddd'); // 星期二
moment().format("MMM Do YY"); // 4月 16日 19
moment().format('YYYY [escaped] YYYY'); // 2019 escaped 2019
moment().format(); // 2019-04-16T12:24:48+08:00
2.相对时间
moment("20111031", "YYYYMMDD").fromNow(); // 7 年前
moment("20120620", "YYYYMMDD").fromNow(); // 7 年前
moment().startOf('day').fromNow(); // 12 小时前
moment().endOf('day').fromNow(); // 12 小时内
moment().startOf('hour').fromNow(); // 28 分钟前
3.日历时间
moment().subtract(10, 'days').calendar(); // 2019年4月6日
moment().subtract(6, 'days').calendar(); // 上周三中午12点28
moment().subtract(3, 'days').calendar(); // 上周六中午12点28
moment().subtract(1, 'days').calendar(); // 昨天中午12点28分
moment().calendar(); // 今天中午12点28分
moment().add(1, 'days').calendar(); // 明天中午12点28分
moment().add(3, 'days').calendar(); // 本周五中午12点28
moment().add(10, 'days').calendar(); // 2019年4月26日
4.多语言支持
moment().format('L'); // 2019-04-16
moment().format('l'); // 2019-04-16
moment().format('LL'); // 2019年4月16日
moment().format('ll'); // 2019年4月16日
moment().format('LLL'); // 2019年4月16日中午12点28分
moment().format('lll'); // 2019年4月16日中午12点28分
moment().format('LLLL'); // 2019年4月16日星期二中午12点28分
moment().format('llll'); // 2019年4月16日星期二中午12点28分
5.汉化
import Vue from 'vue'
import _moment from 'moment'
_moment.defineLocale('zh-cn', {
months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),
monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'),
weekdaysMin: '日_一_二_三_四_五_六'.split('_'),
longDateFormat: {
LT: 'Ah点mm分',
LTS: 'Ah点m分s秒',
L: 'YYYY-MM-DD',
LL: 'YYYY年MMMD日',
LLL: 'YYYY年MMMD日Ah点mm分',
LLLL: 'YYYY年MMMD日ddddAh点mm分',
l: 'YYYY-MM-DD',
ll: 'YYYY年MMMD日',
lll: 'YYYY年MMMD日Ah点mm分',
llll: 'YYYY年MMMD日ddddAh点mm分'
},
meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
meridiemHour: function (hour, meridiem) {
if (hour === 12) {
hour = 0;
}
if (meridiem === '凌晨' || meridiem === '早上' ||
meridiem === '上午') {
return hour;
} else if
说明文档
格式代码 说明 返回值
YYYY 四位数字完整表示的年份 如:1999 或 2019
M 数字表示的月份,没有前导零 1 ~ 12
MM 数字表示的月份,没有前导零 01 ~ 12
MMM 三个字母缩写表示的月份 一月 ~ 十二月
MMMM 数字表示的月份,没有前导零 一月 ~ 十二月
M 月份,完整的文本格式 1 ~ 12
D 月份中的第几天,没有前导零 1 ~ 31
DD 月份中的第几天,有前导零 01 ~ 31
d 星期中的第几天,数字表示 0 ~ 6,0 表示周日,6 表示周六
ddd 三个字母表示星期中的第几天 星期日 ~ 星期六
dddd 星期几,完整的星期文本 星期日 ~ 星期六
HH 小时,24小时制,有前导零 00 ~ 23
H 小时,24小时制,无前导零 0 ~ 23
hh 小时,12小时制,有前导零 00 ~ 12
h 小时,12小时制,无前导零 0 ~ 12
mm 分钟,有前导零 00 ~ 59
m 分钟,没有前导零 0 ~ 59
ss 秒,有前导零 01 ~ 59
s 秒,无前导零 1 ~ 59
————————————————
版权声明:本文为CSDN博主「半度℃温热」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/fu983531588/article/details/89330929
参考文章链接: vue使用Moment插件格式化时间.