应该在做项目的时候我们都遇到了秒转换日期的问题,今天做VUE项目的时候遇到了这个顺带分析给大家。

先来定义过滤器

export function formatDate (date, fmt) {
        if (/(y+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
        }
        let o = {
            'M+': date.getMonth() + 1,
            'd+': date.getDate(),
            'h+': date.getHours(),
            'm+': date.getMinutes(),
            's+': date.getSeconds()
        };
        for (let k in o) {
            if (new RegExp(`(${k})`).test(fmt)) {
                let str = o[k] + '';
                fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str));
            }
        }
        return fmt;
    };

    function padLeftZero (str) {
        return ('00' + str).substr(str.length);
    };

直接写在当前页面跟data同级

filters:{
    formatDate(time){
        var data = new Date(time);
        return formatDate(data,'yyyy-MM-dd');
    }
   },

调用过滤器

<span>{{noti.assessmouth | formatDate}}</span>

教程来自网上,做项目遇到了就顺便分享给大家,在VUE项目中秒转换正常的日期还是很方面的,😙


转换之前

转换之后