my-uniapp-tools
Version:
一个简洁稳定的 uni-app 开发工具库,提供剪贴板、本地存储、导航、系统信息等常用功能
82 lines (81 loc) • 2.2 kB
TypeScript
/**
* 本地存储相关工具函数(优化版本)
*/
/**
* 存储配置选项
*/
export interface StorageOptions {
ttl?: number;
}
/**
* 存储项结构
*/
export interface StorageItem<T = any> {
value: T;
timestamp: number;
ttl?: number;
}
export interface StorageInfo {
keys: string[];
currentSize: number;
limitSize: number;
}
/**
* 同步设置本地缓存(优化版本)
* @param key 缓存键
* @param obj 要缓存的值,可以是任何类型
* @param options 存储选项
* @returns 是否设置成功
*/
export declare function setStorageSync<T>(key: string, obj: T, options?: StorageOptions): boolean;
/**
* 同步获取本地缓存(优化版本)
* @param key 缓存键
* @param defaultValue 默认值
* @returns 缓存的值
*/
export declare function getStorageSync<T>(key: string, defaultValue?: T): T | undefined;
/**
* 同步清理本地缓存(优化版本)
* @param key 可选的缓存键
* @returns 是否清理成功
*/
export declare function clearStorageSync(key?: string): boolean;
/**
* 异步设置本地缓存
* @param key 缓存键
* @param obj 要缓存的值
* @param options 存储选项
* @returns Promise<boolean>
*/
export declare function setStorage<T>(key: string, obj: T, options?: StorageOptions): Promise<boolean>;
/**
* 异步获取本地缓存
* @param key 缓存键
* @param defaultValue 默认值
* @returns Promise<T | undefined>
*/
export declare function getStorage<T>(key: string, defaultValue?: T): Promise<T | undefined>;
/**
* 获取存储信息
* @returns 存储信息
*/
export declare function getStorageInfo(): StorageInfo;
/**
* 清理过期数据
* @returns 清理的数据条数
*/
export declare function cleanExpiredStorage(): number;
/**
* 批量设置存储
* @param items 要设置的键值对
* @param options 存储选项
* @returns 成功设置的数量
*/
export declare function batchSetStorage(items: Record<string, any>, options?: StorageOptions): number;
/**
* 批量获取存储
* @param keys 要获取的键数组
* @returns 键值对对象
*/
export declare function batchGetStorage<T = any>(keys: string[]): Record<string, T | undefined>;