关于vue的时间格式化过滤器的简单demo`
<h3>{{ msg | dateFormat('yyyy-mm-dd h:m:s')}}</h3>
dateFormat: function (dateStr, pattern = '') {
var dt = new Date(dateStr)
var yy = dt.getFullYear()
// 方法一
// var mm = dt.getMonth() + 1 < 10 ? '0' + dt.getMonth() : dt.getMonth()
// var dd = dt.getDate() < 10 ? '0' + dt.getDate() : dt.getDate()
// var h = dt.getHours() < 10 ? '0' + dt.getHours() : dt.getHours()
// var m = dt.getMinutes() < 10 ? '0' + dt.getMinutes() : dt.getMinutes()
// var s = dt.getSeconds() < 10 ? '0' + dt.getSeconds() : dt.getSeconds()
// 方法二
// ES2017 引入了字符串补全长度的功能。如果某个字符串不够指定长度,会在头部或尾部补全。padStart()用于头部补全,padEnd()用于尾部补全。
var mm = (dt.getMonth() + 1).toString().padStart(2, '0')
var dd = dt.getDate().toString().padStart(2, '0')
var h = dt.getHours().toString().padStart(2, '0')
var m = dt.getMinutes().toString().padStart(2, '0')
var s = dt.getSeconds().toString().padStart(2, '0')
if (pattern.toLowerCase() === 'yyyy-mm-dd') {
return yy + '-' + mm + '-' + dd
} else {
return yy + '-' + mm + '-' + dd + ' ' + h + ':' + m + ':' + s
}
}