From 4b8f0d1cb618b00303502681159b0ad6bc4404a6 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期二, 24 三月 2026 14:54:40 +0800
Subject: [PATCH] fix: 真机运行时,日期组件默认当前日期
---
src/utils/ruoyi.js | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 50 insertions(+), 0 deletions(-)
diff --git a/src/utils/ruoyi.js b/src/utils/ruoyi.js
index 9a10326..f659c1a 100644
--- a/src/utils/ruoyi.js
+++ b/src/utils/ruoyi.js
@@ -224,3 +224,53 @@
return true;
}
}
+
+/**
+* 灏嗘棩鏈熻浆鎹负YYYY-MM-DD鏍煎紡
+* @param {*} dateSource 鏃ユ湡婧愶紙鍙互鏄椂闂存埑鎴朌ate瀵硅薄锛�
+* @returns 鏍煎紡鍖栧悗鐨勬棩鏈熷瓧绗︿覆 YYYY-MM-DD
+*/
+export function formatDateToYMD(dateSource) {
+ let date;
+ // 澶勭悊锛氬鏋滄槸鏃堕棿鎴筹紝鍏堣浆涓篋ate瀵硅薄
+ if (typeof dateSource === 'number') {
+ const timestamp = dateSource.toString().length === 10 ? dateSource * 1000 : dateSource;
+ date = new Date(timestamp);
+ }
+ // 澶勭悊锛氬鏋滄槸Date瀵硅薄锛岀洿鎺ヤ娇鐢�
+ else if (dateSource instanceof Date) {
+ date = dateSource;
+ }
+ // 澶勭悊锛氬鏋滄槸瀛楃涓诧紝鍋氬吋瀹硅浆鎹�
+ else if (typeof dateSource === 'string') {
+ const raw = dateSource.trim();
+ if (!raw) return '';
+ if (/^[0-9]+$/.test(raw)) {
+ const n = parseInt(raw, 10);
+ const timestamp = raw.length === 10 ? n * 1000 : n;
+ date = new Date(timestamp);
+ } else {
+ // iOS / 閮ㄥ垎 WebView 瀵� YYYY-MM-DD 鍏煎杈冨樊锛岀粺涓�杞� /
+ const normalized = raw
+ .replace(new RegExp(/-/gm), '/')
+ .replace('T', ' ')
+ .replace(new RegExp(/\.[\d]{3}/gm), '');
+ date = new Date(normalized);
+ }
+ }
+ // 寮傚父鎯呭喌锛氳繑鍥炵┖
+ else {
+ return '';
+ }
+
+ if (!(date instanceof Date) || Number.isNaN(date.getTime())) return '';
+
+ // 琛ラ浂鍑芥暟锛氱‘淇濇湀/鏃ユ槸涓や綅鏁�
+ const padZero = (num) => num.toString().padStart(2, '0');
+
+ const year = date.getFullYear();
+ const month = padZero(date.getMonth() + 1);
+ const day = padZero(date.getDate());
+
+ return `${year}-${month}-${day}`;
+}
--
Gitblit v1.9.3