Browse Source
chore: 增强 util-formatDate ts 类型提示 (#6886)
* feat: 为 auth layout 添加 slot: logo, 提升组件的灵活性和可复用性
* feat: 增强 util-formatDate ts 类型提示
pull/6836/head^2
Utopia
3 months ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with
15 additions and
3 deletions
-
packages/@core/base/shared/src/utils/date.ts
|
|
@ -7,7 +7,19 @@ dayjs.extend(timezone); |
|
|
|
|
|
|
|
|
type FormatDate = Date | dayjs.Dayjs | number | string; |
|
|
type FormatDate = Date | dayjs.Dayjs | number | string; |
|
|
|
|
|
|
|
|
export function formatDate(time: FormatDate, format = 'YYYY-MM-DD') { |
|
|
type Format = |
|
|
|
|
|
| 'HH' |
|
|
|
|
|
| 'HH:mm' |
|
|
|
|
|
| 'HH:mm:ss' |
|
|
|
|
|
| 'YYYY' |
|
|
|
|
|
| 'YYYY-MM' |
|
|
|
|
|
| 'YYYY-MM-DD' |
|
|
|
|
|
| 'YYYY-MM-DD HH' |
|
|
|
|
|
| 'YYYY-MM-DD HH:mm' |
|
|
|
|
|
| 'YYYY-MM-DD HH:mm:ss' |
|
|
|
|
|
| (string & {}); |
|
|
|
|
|
|
|
|
|
|
|
export function formatDate(time?: FormatDate, format: Format = 'YYYY-MM-DD') { |
|
|
try { |
|
|
try { |
|
|
const date = dayjs.isDayjs(time) ? time : dayjs(time); |
|
|
const date = dayjs.isDayjs(time) ? time : dayjs(time); |
|
|
if (!date.isValid()) { |
|
|
if (!date.isValid()) { |
|
|
@ -16,11 +28,11 @@ export function formatDate(time: FormatDate, format = 'YYYY-MM-DD') { |
|
|
return date.tz().format(format); |
|
|
return date.tz().format(format); |
|
|
} catch (error) { |
|
|
} catch (error) { |
|
|
console.error(`Error formatting date: ${error}`); |
|
|
console.error(`Error formatting date: ${error}`); |
|
|
return String(time); |
|
|
return String(time ?? ''); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
export function formatDateTime(time: FormatDate) { |
|
|
export function formatDateTime(time?: FormatDate) { |
|
|
return formatDate(time, 'YYYY-MM-DD HH:mm:ss'); |
|
|
return formatDate(time, 'YYYY-MM-DD HH:mm:ss'); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|