vue 前端将时间戳格式化

时间:2023-03-09 23:41:40
vue 前端将时间戳格式化

转自西风XF : 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>