时间过滤器
本人新手前段时间想用时间过滤器把ISO标准格式转化为时间戳上网搜了一下发现了这个比较好用的时间过滤,废话不多说,上代码:
filters: {
gettime(ms){//ms是ISO格式的时间字符串,也可以是别的时间对象
let data = new Date(ms).getTime()//这里把ISO格式时间字符串转化为时间戳
let date = new Date().getTime()//当前时间的时间戳
let time = date - data//获取差值
let year = parseInt(time/1000/60/60/24/30/12)//年份
let months = parseInt(time/1000/60/60/24/30)//月份
let week = parseInt(time/1000/60/60/24/7)//周
let days = parseInt(time/1000/60/60/24)//天
let hours = parseInt(time/1000/60/60)//小时
let minutes = parseInt(time/1000/60)//分钟
let str = ''//用空字符串接收下面的结果
if(year>=1){
str = `${year} 年前`
}else if(months+1>=1){
str = `${months+1} 个月前`
}else if(week>=1){
str = `${week} 周前`
}else if(days>=1){
str = `${days} 天前`
}else if(hours>=1){
str = `${hours} 小时前`
}else if(minutes>5){
str = `${minutes} 分钟前`
}else if(minutes<=5){
str = '刚刚'
}
return str//返回字符串使之呈现出多少时间之前的效果
}
}
菜鸟初出茅庐,如有不妥还请各位大神指点指点。