import dayjs from 'dayjs' import 'dayjs/locale/zh-cn' import duration from 'dayjs/plugin/duration' dayjs.locale('zh-cn') export default dayjs dayjs.extend(duration) // 计算日期差异并返回格式化字符串 export function getDateDiff(startDateString: string, endDateString: string) { // 创建起始日期和结束日期对象 const startDate = dayjs(startDateString, 'YYYY-MM-DD HH:mm:ss') const endDate = dayjs(endDateString, 'YYYY-MM-DD HH:mm:ss') // 计算日期差异 const diff = endDate.diff(startDate) console.log(startDateString, endDateString) // 提取差异的时间单位 const duration = dayjs.duration(diff) const years = duration.years() const months = duration.months() const days = duration.days() const hours = duration.hours() const minutes = duration.minutes() const seconds = duration.seconds() console.log(seconds, 'seconds') // 格式化为字符串 const formattedDiff = `${years > 0 ? years : ''}${years > 0 ? '年' : ''}${months > 0 ? months : ''}${months > 0 ? '个月' : ''}${days > 0 ? days : ''}${days > 0 ? '天' : ''}${hours > 0 ? hours : ''}${hours > 0 ? '小时' : ''}${minutes > 0 ? minutes : ''}${minutes > 0 ? '分' : ''}${seconds > 0 ? seconds : ''}${seconds > 0 ? '秒' : ''}` console.log(formattedDiff, 'formattedDiff') return formattedDiff }