fix: 修复前端时间显示错误(+00:00转+08:00)
This commit is contained in:
@@ -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))
|
||||||
|
|||||||
Reference in New Issue
Block a user