融合PK头像头像功能
This commit is contained in:
79
src/utils/pk-mini/storage.js
Normal file
79
src/utils/pk-mini/storage.js
Normal file
@@ -0,0 +1,79 @@
|
||||
// PK Mini 模块专用 Storage 工具
|
||||
// 使用 pk_mini_ 前缀避免与主项目冲突
|
||||
|
||||
const PREFIX = 'pk_mini_'
|
||||
|
||||
export function setStorage(key, value) {
|
||||
localStorage.setItem(PREFIX + key, JSON.stringify(value))
|
||||
}
|
||||
|
||||
export function getStorage(key) {
|
||||
const value = localStorage.getItem(PREFIX + key)
|
||||
if (value) {
|
||||
try {
|
||||
return JSON.parse(value)
|
||||
} catch (e) {
|
||||
return value
|
||||
}
|
||||
}
|
||||
return null
|
||||
}
|
||||
|
||||
export function getPromiseStorage(key) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const value = getStorage(key)
|
||||
if (value) {
|
||||
resolve(value)
|
||||
} else {
|
||||
reject(new Error('Key not found: ' + key))
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
export function clearStorage(key) {
|
||||
localStorage.removeItem(PREFIX + key)
|
||||
}
|
||||
|
||||
export function getPromiseSessionStorage(key) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const value = sessionStorage.getItem(PREFIX + key)
|
||||
if (value) {
|
||||
try {
|
||||
resolve(JSON.parse(value))
|
||||
} catch (e) {
|
||||
resolve(value)
|
||||
}
|
||||
} else {
|
||||
reject(new Error('Key not found: ' + key))
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
export function setSessionStorage(key, value) {
|
||||
sessionStorage.setItem(PREFIX + key, JSON.stringify(value))
|
||||
}
|
||||
|
||||
// 获取主项目的用户数据(用于获取 token 和用户信息)
|
||||
// 主项目使用 'user' 键存储用户信息
|
||||
export function getMainUserData() {
|
||||
// 优先从 'user' 获取(主项目当前使用的键)
|
||||
let userData = localStorage.getItem('user')
|
||||
if (userData) {
|
||||
try {
|
||||
return JSON.parse(userData)
|
||||
} catch (e) {
|
||||
// 解析失败,继续尝试其他键
|
||||
}
|
||||
}
|
||||
|
||||
// 兼容:尝试从 'user_data' 获取(旧键名)
|
||||
userData = localStorage.getItem('user_data')
|
||||
if (userData) {
|
||||
try {
|
||||
return JSON.parse(userData)
|
||||
} catch (e) {
|
||||
return null
|
||||
}
|
||||
}
|
||||
return null
|
||||
}
|
||||
Reference in New Issue
Block a user