ISO时间转化时间戳
我们在实际的开发中
获取的时间格式是ISO格式时间(2018-07-22T16:00:00.000Z)时,比标准的时间少了8个小时。
以下方法转化为时间戳,更加有利于利于展示时间,以级排序
filters: {
timeFilter(ms) {
// 2020-06-01T04:24:43.230Z 获取到的时间格式
// 把时间的中的T和Z 替换成空字符串
let date = ms.replace('T', '');
let data = date.replace('Z', '');
let datime = Date.parse(data);
let time = new Date(); // 当前的时间
let msi = time.getTime(); //转化成时间戳
let cha = msi - datime; //获取到时间差
let months = cha / 1000 / 60 / 60 / 24 / 30; //月
let weeks = cha / 1000 / 60 / 60 / 24 / 7; //周
let days = cha / 1000 / 60 / 60 / 24; //天
let hours = cha / 1000 / 60 / 60; //小时
let minutes = cha / 1000 / 60; //分钟
let str = '';
if (months >= 1) {
str = `${parseInt(months)} 月前`
} else if (weeks >= 1) {
str = `${parseInt(weeks)} 周前`
} else if (days >= 1) {
str = `${parseInt(days)} 天前`
} else if (hours >= 1) {
str = `${parseInt(hours)} 小时前`
} else if (minutes >= 1) {
str = `${parseInt(minutes)} 分钟前`
} else {
str = '刚刚'
}
return str
}
},
第二种方式----(处理日期时间的不二之选)
安装:
cnpm install moment --save
{{data | formatDate}}
import moment from 'moment';
filters: {
formatDate: function (value) {
return moment(value).format('YYYY 年 MM月DD日 HH:mm:ss')
}
},