vue使用Moment插件格式化时间

使用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插件格式化时间.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值