在做订单查询时后端返回给我订单交易的时间但是接收到的是一串数字需要前端对这个数字做一定的处理之后才能渲染成时间的格式:
1.新建一个data.js文件
/**
* lib/date.js
*/
// date原型链对象添加format方法,用于format日期格式
Date.prototype.Format = function (fmt) {
var o = {
'M+': this.getMonth() + 1, // 月份
'd+': this.getDate(), // 日
'h+': this.getHours(), // 小时
'm+': this.getMinutes(), // 分
's+': this.getSeconds(), // 秒
'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
'S': this.getMilliseconds() // 毫秒
}
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
}
for (var k in o) {
if (new RegExp('(' + k + ')').test(fmt)) {
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
}
}
return fmt
}
// Date对象Transfer对象,将时间戳转换成日期对象
Date.Transfer = function (timeSpan) {
if (!timeSpan) {
return new FormatDateNullValue()
}
return new Date(timeSpan)
}
// 创建对象用于date为null值的format
function FormatDateNullValue () { }
FormatDateNullValue.prototype.Format = function (date, value) {
if (value) return value
return '无'
}
2.在需要处理的时间的页面引入data.js
import '@lib/date.js'
3.对从后端请求的时间做处理 this.orderTime.
<div class="label">订单时间</div>
<div class="info_show">{{Date.Transfer(this.orderTime).Format('yyyy-MM-dd hh:mm:ss')}}</div>