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

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>

相关推荐
Madison-No72 小时前
搭建项目测试环境
linux·运维·服务器·python
+VX:Fegn08952 小时前
计算机毕业设计|基于springboot + vue蛋糕店管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·课程设计
半个落月3 小时前
LangChain.js Agent Memory 实战(下):用 Milvus 构建可检索的长期记忆
javascript·langchain
半个落月3 小时前
LangChain.js Agent Memory 实战(上):从内存对话、文件持久化到截断与摘要
javascript·langchain
悠悠121384 小时前
微服务通信别只看性能:REST 与 gRPC 的 6 个选型判断和一次 502 故障复盘
运维·服务器
Nicander4 小时前
我给 Excalidraw 做了一个本地工作区:DrawSpace
前端·开源
云老大-阿里云国际站代理商5 小时前
华为云国际站服务代理商:NAT网关怎么配?多台ECS共用公网IP要注意什么
服务器·华为云·云计算
linux_cfan6 小时前
17 · 引擎适配器全景:HLS/DASH/Vimeo/Mux/Cast
前端·javascript·音视频
计算机魔术师6 小时前
烧掉2780亿美元还不够?OpenAI的资本豪赌让人头皮发麻
前端
IT_陈寒7 小时前
Java线程池用错参数,我的服务居然悄悄崩溃了
前端·人工智能·后端