From 8366455d0b680c7be7ffe81e1cdf619b4b8d5307 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8C=83=E9=B9=8F?= Date: Thu, 19 Dec 2024 17:14:37 +0800 Subject: [PATCH] 1 --- common.js | 3 +- export.js | 84 +++++++++++++++++++++++++++++++++++----------- star-cloud/lock.js | 3 +- web/log.js | 20 +++++++++++ web/request.js | 6 ++-- 5 files changed, 89 insertions(+), 27 deletions(-) create mode 100644 web/log.js diff --git a/common.js b/common.js index 50c7eb5..9b4d99d 100644 --- a/common.js +++ b/common.js @@ -28,8 +28,7 @@ import { updatePasswordRequest, uploadRecordRequest } from './api' -import { getStorage, setStorage } from './export' -import log from '@/starCloud/uni/log' +import { getStorage, setStorage, log } from './export' /** * 同步开门记录 diff --git a/export.js b/export.js index 3279379..e6972eb 100644 --- a/export.js +++ b/export.js @@ -1,35 +1,79 @@ -import { getStorageUni, removeStorageUni, setStorageUni } from './uni/storage' -import { getStorageWeb, removeStorageWeb, setStorageWeb } from './web/storage' -import requestUni from '@/starCloud/uni/request' -import requestWeb from '@/starCloud/web/request' import starCloudInstance from './star-cloud' -export const setStorage = (key, value) => { +const loadStorageModule = async () => { + console.log('starCloudInstance.platform:', starCloudInstance.platform) if (starCloudInstance.platform === 2) { - setStorageWeb(key, value) + const { setStorageWeb, getStorageWeb, removeStorageWeb } = await import('./web/storage') + return { + setStorage: setStorageWeb, + getStorage: getStorageWeb, + removeStorage: removeStorageWeb + } } else { - setStorageUni(key, value) + const { setStorageUni, getStorageUni, removeStorageUni } = await import('./uni/storage') + return { + setStorage: setStorageUni, + getStorage: getStorageUni, + removeStorage: removeStorageUni + } } } -export const getStorage = key => { +const loadRequestModule = async () => { if (starCloudInstance.platform === 2) { - return getStorageWeb(key) - } - return getStorageUni(key) -} - -export const removeStorage = key => { - if (starCloudInstance.platform === 2) { - removeStorageWeb(key) + const { default: requestWeb } = await import('./web/request') + return requestWeb } else { - removeStorageUni(key) + const { default: requestUni } = await import('./uni/request') + return requestUni } } -export const request = async params => { +const loadLogModule = async () => { if (starCloudInstance.platform === 2) { - return await requestWeb(params) + const { default: logWeb } = await import('./web/log') + return logWeb + } else { + const { default: logUni } = await import('./uni/log') + return logUni } - return await requestUni(params) +} + +let storageInstance = null +let requestInstance = null +let logInstance = null + +export const setStorage = async (key, value) => { + if (!storageInstance) { + storageInstance = await loadStorageModule() + } + return storageInstance.setStorage(key, value) +} + +export const getStorage = async (key) => { + if (!storageInstance) { + storageInstance = await loadStorageModule() + } + return storageInstance.getStorage(key) +} + +export const removeStorage = async (key) => { + if (!storageInstance) { + storageInstance = await loadStorageModule() + } + return storageInstance.removeStorage(key) +} + +export const request = async (params) => { + if (!requestInstance) { + requestInstance = await loadRequestModule() + } + return requestInstance(params) +} + +export const log = async () => { + if (!logInstance) { + logInstance = await loadLogModule() + } + return logInstance } diff --git a/star-cloud/lock.js b/star-cloud/lock.js index ab4b229..19e5889 100644 --- a/star-cloud/lock.js +++ b/star-cloud/lock.js @@ -3,8 +3,7 @@ import { cmdIds, Result } from '../constant' import { searchAndConnectDevice, writeBLECharacteristicValue } from '../uni/basic' import { createPackageEnd, md5Encrypt, timestampToArray } from '../format' import { getLockDetailRequest, getLockSettingDataRequest } from '../api' -import { getStorage, setStorage } from '../export' -import log from '../uni/log' +import { getStorage, setStorage, log } from '../export' /** * 选择锁 diff --git a/web/log.js b/web/log.js new file mode 100644 index 0000000..e162cda --- /dev/null +++ b/web/log.js @@ -0,0 +1,20 @@ +import starCloudInstance from '../star-cloud' + +export default { + debug() { + if (!starCloudInstance.isReportLog) return + console.log(arguments[0]) + }, + info() { + if (!starCloudInstance.isReportLog) return + console.log(arguments[0]) + }, + warn() { + if (!starCloudInstance.isReportLog) return + console.log(arguments[0]) + }, + error() { + if (!starCloudInstance.isReportLog) return + console.log(arguments[0]) + } +} diff --git a/web/request.js b/web/request.js index f5c6aab..26b7ed9 100644 --- a/web/request.js +++ b/web/request.js @@ -1,6 +1,6 @@ -import { getStorage, removeStorage } from '@/starCloud/uniapp/storage' -import starCloudInstance from '@/starCloud/star-cloud' -import { Result } from '@/constants/result' +import { getStorage, removeStorage } from '../export.js' +import starCloudInstance from '../star-cloud' +import { Result } from '../constant' /* * config