diff --git a/src/platforms/app-plus/service/api/storage/storage.js b/src/platforms/app-plus/service/api/storage/storage.js index 5e1ec5910e1048d2edd306e7f766ad8f4f482286..ad0d87cdb905eb8713ef034fc46edf4e0d1d410f 100644 --- a/src/platforms/app-plus/service/api/storage/storage.js +++ b/src/platforms/app-plus/service/api/storage/storage.js @@ -12,9 +12,16 @@ function parseValue (value) { const type = object.type if (types.indexOf(type) >= 0) { const keys = Object.keys(object) - // eslint-disable-next-line valid-typeof - if (keys.length === 2 && 'data' in object && typeof object.data === type) { - return object.data + if (keys.length === 2 && 'data' in object) { + // eslint-disable-next-line valid-typeof + if (typeof object.data === type) { + return object.data + } + // eslint-disable-next-line no-useless-escape + if (type === 'object' && /^\d{4}-\d{2}-\d{2}T\d{2}\:\d{2}\:\d{2}\.\d{3}Z$/.test(object.data)) { + // ISO 8601 格式返回 Date + return new Date(object.data) + } } else if (keys.length === 1) { return '' } diff --git a/src/platforms/h5/service/api/storage/storage.js b/src/platforms/h5/service/api/storage/storage.js index 2ba6370480f5a5e61fe1335836ed82a43ed2d4d0..0ec29683f88304efeff25f6b94dc912a237c5a63 100644 --- a/src/platforms/h5/service/api/storage/storage.js +++ b/src/platforms/h5/service/api/storage/storage.js @@ -7,9 +7,16 @@ function parseValue (value) { const type = object.type if (types.indexOf(type) >= 0) { const keys = Object.keys(object) - // eslint-disable-next-line valid-typeof - if (keys.length === 2 && 'data' in object && typeof object.data === type) { - return object.data + if (keys.length === 2 && 'data' in object) { + // eslint-disable-next-line valid-typeof + if (typeof object.data === type) { + return object.data + } + // eslint-disable-next-line no-useless-escape + if (type === 'object' && /^\d{4}-\d{2}-\d{2}T\d{2}\:\d{2}\:\d{2}\.\d{3}Z$/.test(object.data)) { + // ISO 8601 格式返回 Date + return new Date(object.data) + } } else if (keys.length === 1) { return '' }