根据具体时间转换为一周前、几小时前格式

javascript 复制代码
export function formatChangeTime(dateTimeStamp){
  // dateTimeStamp是一个时间毫秒,注意时间戳是秒的形式,在这个毫秒的基础上除以1000
 let minute = 1000 * 60;      //把分,时,天,周,半个月,一个月用毫秒表示
 let hour = minute * 60;
 let day = hour * 24;
 let week = day * 7;
 //var halfamonth = day * 15;
 let month = day * 30;

 let now = new Date().getTime();   //获取当前时间毫秒
 let diffValue = now - dateTimeStamp;//时间差

 if (diffValue < 0) { return; }

 let minC = diffValue / minute;  //计算时间差的分,时,天,周,月
 let hourC = diffValue / hour;
 let dayC = diffValue / day;
 let weekC = diffValue / week;
 let monthC = diffValue / month;
 let result
 if (monthC >= 1) {
     result = "" + parseInt(monthC) + "月前";
 }
 else if (weekC >= 1) {
     result = "" + parseInt(weekC) + "周前";
 }
 else if (dayC >= 1) {
     result = "" + parseInt(dayC) + "天前";
 }
 else if (hourC >= 1) {
     result = "" + parseInt(hourC) + "小时前";
 }
 else if (minC >= 1) {
     result = "" + parseInt(minC) + "分钟前";
 } else
     result = "刚刚";
 return result;
}

使用:

filters: {

timerChange(time, that) {

if (time) {

// 转为时间戳

let twmpTime = new Date(time).getTime()

return that.formatChangeTime(twmpTime)

}

},

},

<el-table-column

prop="timeDifference"

label="更新时间"

width="70">

<template slot-scope="scope">

<div>

{{ scope.row.timeDifference | timerChange(that) }}

</div>

</template>

</el-table-column>

相关推荐
humcomm1 分钟前
AI编程时代前端架构师的机遇和挑战
前端·架构·ai编程
叶非花3 分钟前
Ubuntu服务器性能检测工具NetData安装
linux·服务器·ubuntu
在角落发呆5 分钟前
Windows 8系统下的IP转发:一台电脑如何变身网络桥梁
运维·服务器
许长安7 分钟前
RingBuffer:面向网络编程的环形缓冲区实现
服务器·网络·c++·经验分享·笔记·缓存
adminwolf10 分钟前
自研企业微信SCRM系统源码独立部署(Golang+Vue.js)
前端·vue.js·企业微信
小短腿的代码世界11 分钟前
QwtPolar 与实时示波器级渲染优化:雷达图到示波器曲线的极限性能调优
前端·qt·架构·交互
早起傻一天~G19 分钟前
vue2+element-UI上传文件
javascript·vue.js·ui
skd899923 分钟前
酒店总机永不占线解决方案-小蜜蜂多酒店系统配置说明
服务器·信息与通信
机器视觉知识推荐、就业指导28 分钟前
npm 安装/运行报错及解决方案
前端·npm·node.js
BS_Li28 分钟前
【Linux网络编程】应用层自定义协议与序列化
linux·服务器·网络