vue 前端将时间戳格式化

转自 : https://blog.csdn.net/qq_36242361/article/details/79143050

后端传过来的时间数据是时间戳的形式,前端需要进行格式化

1. 新建一个 js 文件,取名为 date.js。 2. 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)
};
<!-- **.vue -->
<template>
    <!-- time时间戳 -->
    <div>{{time | formatDate}}</div>
    <!-- 输出结果 -->
    <!-- <div>2016-07-23 21:52</div> -->
</template>
<script>
import {formatDate} from './common/date.js';
export default {
    filters: {
        formatDate(time) {
            var date = new Date(time);
            return formatdate(date, 'yyyy-MM-dd hh:mm:ss');  // 此处可根据自己的需要自定义想要的日期格式
        }
    }
}
</script>

 

posted on 2019-04-29 17:24  mlllily  阅读(7577)  评论(0编辑  收藏  举报