From 6bbe523f6fbb47f4f343c2e010cb5028c3b48125 Mon Sep 17 00:00:00 2001 From: Utopia Date: Sun, 9 Nov 2025 12:00:49 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E5=A2=9E=E5=BC=BA=20util-formatDate?= =?UTF-8?q?=20ts=20=E7=B1=BB=E5=9E=8B=E6=8F=90=E7=A4=BA=20(#6886)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: 为 auth layout 添加 slot: logo, 提升组件的灵活性和可复用性 * feat: 增强 util-formatDate ts 类型提示 --- packages/@core/base/shared/src/utils/date.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/packages/@core/base/shared/src/utils/date.ts b/packages/@core/base/shared/src/utils/date.ts index b56023c8..926050d1 100644 --- a/packages/@core/base/shared/src/utils/date.ts +++ b/packages/@core/base/shared/src/utils/date.ts @@ -7,7 +7,19 @@ dayjs.extend(timezone); 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 { const date = dayjs.isDayjs(time) ? time : dayjs(time); if (!date.isValid()) { @@ -16,11 +28,11 @@ export function formatDate(time: FormatDate, format = 'YYYY-MM-DD') { return date.tz().format(format); } catch (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'); }