From ffd0af47ee31a9592cfab56a907e9841a9113c52 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期四, 20 七月 2023 10:37:17 +0800 Subject: [PATCH] 代码提交,前端代码打包 --- Source/UBCS-WEB/dist/src/util/store.js | 121 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 121 insertions(+), 0 deletions(-) diff --git a/Source/UBCS-WEB/dist/src/util/store.js b/Source/UBCS-WEB/dist/src/util/store.js new file mode 100644 index 0000000..6388ec2 --- /dev/null +++ b/Source/UBCS-WEB/dist/src/util/store.js @@ -0,0 +1,121 @@ +import { + validatenull +} from '@/util/validate'; +import website from '@/config/website' + +const keyName = website.key + '-'; +/** + * 瀛樺偍localStorage + */ +export const setStore = (params = {}) => { + let { + name, + content, + type, + } = params; + name = keyName + name + let obj = { + dataType: typeof (content), + content: content, + type: type, + datetime: new Date().getTime() + } + if (type) window.sessionStorage.setItem(name, JSON.stringify(obj)); + else window.localStorage.setItem(name, JSON.stringify(obj)); +} +/** + * 鑾峰彇localStorage + */ + +export const getStore = (params = {}) => { + let { + name, + debug + } = params; + name = keyName + name + let obj = {}, + content; + obj = window.sessionStorage.getItem(name); + if (validatenull(obj)) obj = window.localStorage.getItem(name); + if (validatenull(obj)) return; + try { + obj = JSON.parse(obj); + } catch{ + return obj; + } + if (debug) { + return obj; + } + if (obj.dataType == 'string') { + content = obj.content; + } else if (obj.dataType == 'number') { + content = Number(obj.content); + } else if (obj.dataType == 'boolean') { + content = eval(obj.content); + } else if (obj.dataType == 'object') { + content = obj.content; + } + return content; +} +/** + * 鍒犻櫎localStorage + */ +export const removeStore = (params = {}) => { + let { + name, + type + } = params; + name = keyName + name + if (type) { + window.sessionStorage.removeItem(name); + } else { + window.localStorage.removeItem(name); + } + +} + +/** + * 鑾峰彇鍏ㄩ儴localStorage + */ +export const getAllStore = (params = {}) => { + let list = []; + let { + type + } = params; + if (type) { + for (let i = 0; i <= window.sessionStorage.length; i++) { + list.push({ + name: window.sessionStorage.key(i), + content: getStore({ + name: window.sessionStorage.key(i), + type: 'session' + }) + }) + } + } else { + for (let i = 0; i <= window.localStorage.length; i++) { + list.push({ + name: window.localStorage.key(i), + content: getStore({ + name: window.localStorage.key(i), + }) + }) + + } + } + return list; + +} + +/** + * 娓呯┖鍏ㄩ儴localStorage + */ +export const clearStore = (params = {}) => { + let { type } = params; + if (type) { + window.sessionStorage.clear(); + } else { + window.localStorage.clear() + } + +} \ No newline at end of file -- Gitblit v1.9.3