美文网首页
Vue手写时间过滤器

Vue手写时间过滤器

作者: 菜的只能打代码 | 来源:发表于2020-11-06 15:23 被阅读0次

    使用方法: <td  v-cloak>{{item.date | format('yyyy-MM-dd hh:mm:ss')}}</td> 


    定义:

      Vue.filter('format', function(value, arg) {

          function dateFormat(date, format) {

            if (typeof date === "string") {

              var mts = date.match(/(\/Date\((\d+)\)\/)/);

              if (mts && mts.length >= 3) {

                date = parseInt(mts[2]);

              }

            }

            date = new Date(date);

            if (!date || date.toUTCString() == "Invalid Date") {

              return "";

            }

            var map = {

              "M": date.getMonth() + 1, //月份 

              "d": date.getDate(), //日 

              "h": date.getHours(), //小时 

              "m": date.getMinutes(), //分 

              "s": date.getSeconds(), //秒 

              "q": Math.floor((date.getMonth() + 3) / 3), //季度 

              "S": date.getMilliseconds() //毫秒 

            };

            format = format.replace(/([yMdhmsqS])+/g, function(all, t) {

              var v = map[t];

              if (v !== undefined) {

                if (all.length > 1) {

                  v = '0' + v;

                  v = v.substr(v.length - 2);

                }

                return v;

              } else if (t === 'y') {

                return (date.getFullYear() + '').substr(4 - all.length);

              }

              return all;

            });

            return format;

          }

          return dateFormat(value, arg);

        })

    相关文章

      网友评论

          本文标题:Vue手写时间过滤器

          本文链接:https://www.haomeiwen.com/subject/nhmtbktx.html