吴羡
8 小时以前 c6e96cdb8b1cfb51e9a45bf86c38d1353e983127
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import dayjs from 'dayjs'
 
// 列表日期统一显示:纯日期只显示年月日,时间去掉 ISO 的 T,只保留到分钟
export function formatListDate(value) {
  if (value === null || value === undefined || value === '') {
    return value
  }
  const str = String(value)
  if (/^\d{4}-\d{2}-\d{2}$/.test(str)) {
    return str
  }
  if (/T00:00:00(\.\d+)?$/.test(str) || / 00:00:00$/.test(str)) {
    return str.slice(0, 10)
  }
  const date = dayjs(str)
  return date.isValid() ? date.format('YYYY-MM-DD HH:mm') : str
}
 
// 纯日期统一显示 yyyy-MM-dd,忽略可能带出的时间部分
export function formatDateOnly(value) {
  if (value === null || value === undefined || value === '') {
    return value
  }
  const date = dayjs(String(value).replace(/\//g, '-'))
  return date.isValid() ? date.format('YYYY-MM-DD') : formatListDate(value)
}