feat:初始化 -融骅
This commit is contained in:
52
front/src/utils/storage.js
Normal file
52
front/src/utils/storage.js
Normal file
@@ -0,0 +1,52 @@
|
||||
export default (storage) => {
|
||||
if (!storage) return
|
||||
|
||||
const skey = (key) => '' + key
|
||||
|
||||
return {
|
||||
/**
|
||||
* 获取
|
||||
* @param {string} key key
|
||||
* @param {any} defaultValue defaultValue
|
||||
*/
|
||||
get (key, defaultValue) {
|
||||
try {
|
||||
return JSON.parse(storage.getItem(skey(key))) || defaultValue
|
||||
} catch (error) {
|
||||
return defaultValue
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* 保存
|
||||
* @param {string} key key
|
||||
* @param {any} val 值
|
||||
*/
|
||||
save (key, val) {
|
||||
if (val === undefined || val === null) return this.remove(key)
|
||||
storage.setItem(skey(key), JSON.stringify(val))
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取 所有key
|
||||
*/
|
||||
keys () {
|
||||
return Object.keys(storage)
|
||||
},
|
||||
|
||||
/**
|
||||
* 删除
|
||||
* @param {string} key key
|
||||
*/
|
||||
remove (key) {
|
||||
storage.removeItem(skey(key))
|
||||
},
|
||||
|
||||
/**
|
||||
* 清空
|
||||
*/
|
||||
clear () {
|
||||
storage.clear()
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user