fix: 修复前端时间显示错误(+00:00转+08:00)

This commit is contained in:
stefanfeng
2026-03-31 13:38:21 +08:00
parent 3a06224f5d
commit 9b87eeb84b

View File

@@ -6,9 +6,23 @@ const request = axios.create({
timeout: 30000, timeout: 30000,
}) })
// 递归把响应里所有 +00:00 时区标识替换为 +08:00数据库存北京时间后端误标为 UTC
function fixDatetimeTZ(obj) {
if (typeof obj === 'string') {
return obj.replace(/T(\d{2}:\d{2}:\d{2})\+00:00/g, 'T$1+08:00')
}
if (Array.isArray(obj)) return obj.map(fixDatetimeTZ)
if (obj && typeof obj === 'object') {
const result = {}
for (const k in obj) result[k] = fixDatetimeTZ(obj[k])
return result
}
return obj
}
request.interceptors.response.use( request.interceptors.response.use(
res => { res => {
const data = res.data const data = fixDatetimeTZ(res.data)
if (data.code && data.code !== 200) { if (data.code && data.code !== 200) {
ElMessage.error(data.message || '请求失败') ElMessage.error(data.message || '请求失败')
return Promise.reject(new Error(data.message)) return Promise.reject(new Error(data.message))