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

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>

相关推荐
小Ti客栈3 分钟前
Netty 零拷贝原理与实战
运维·服务器·网络
晗夜未央35 分钟前
任务队列反复失败,先分清重试、阻塞和结果待核对
开发语言·javascript
SDWAN_Cheap1 小时前
物理服务器跟云服务器有什么区别,使用于什么场景
运维·服务器
Smoothcloud润云1 小时前
GPU算力平台推荐:复现实验时,如何判断租用资源是否合适?
服务器·人工智能·深度学习·gpu算力·gpu
锋行天下1 小时前
DeepSeek写Langgraph就是个大傻逼,一本正经胡说八道
前端·人工智能·后端
jktantan1 小时前
每个节点 41 字节:把一棵百万节点树拆进 14 个 typed array
前端·javascript·vue.js·算法·typescript
计算机魔术师2 小时前
Anthropic官方插件被「寄生」,背后是同一类攻击又来了
前端
我命由我123452 小时前
访客系统形式(有用户概念、无用户概念)
java·开发语言·前端·javascript·python·产品运营·产品经理
叼烟扛炮2 小时前
[LangChain] 学习笔记(02):LCEL 链式调用与动态模型配置实战
服务器·开发语言·网络·笔记·学习·langchain
key_3_feng2 小时前
评估与对齐:Agent 自我进化的护栏
前端·数据库·agent