更新记录

1.0.1(2026-07-08) 下载此版本

修复已知bug

1.0.0(2026-07-08) 下载此版本

本地存储


平台兼容性

uni-app x(4.87)

Chrome Safari Android iOS 鸿蒙 微信小程序

wp-storage

本地存储封装UTS插件,支持命名空间隔离、TTL过期,适用于uni-app x项目。

引入

import { WpStorage, createStorage } from "@/uni_modules/wp-storage"

通用存储

set - 写入数据

// 基本写入
WpStorage.set('username', 'admin')

// 写入对象
WpStorage.set('config', { theme: 'dark', lang: 'zh' } as UTSJSONObject)

// 设置TTL过期(单位:秒)
WpStorage.set('verify_code', '123456', { ttl: 300 })

get - 读取数据

// 基本读取
const name = WpStorage.get('username')  // "admin"

// 带默认值读取
const age = WpStorage.get('age', 18)    // 键不存在时返回 18

// 读取对象
const config = WpStorage.get('config') as UTSJSONObject

// 过期数据自动清除,返回默认值或 null
const code = WpStorage.get('verify_code')  // 过期后返回 null

remove - 删除数据

WpStorage.remove('username')

clear - 清除当前命名空间下所有数据

WpStorage.clear()

has - 检查键是否存在

if (WpStorage.has('username')) {
  // 键存在且未过期
}

getKeys - 获取当前命名空间下所有键名

const keys = WpStorage.getKeys()  // ["username", "config", ...]

业务快捷存储

Token 管理

// 保存 Token
WpStorage.setToken('eyJhbGciOiJIUzI1NiJ9...')

// 获取 Token
const token = WpStorage.getToken()  // "eyJhbGciOiJIUzI1NiJ9..." 或 null

// 带 TTL 保存(7天过期)
WpStorage.setToken('eyJhbGciOiJIUzI1NiJ9...', { ttl: 604800 })

用户信息管理

// 保存用户信息
WpStorage.setUserInfo({ name: '张三', role: 'admin' } as UTSJSONObject)

// 获取用户信息
const userInfo = WpStorage.getUserInfo()  // UTSJSONObject 或 null

清除业务数据

// 同时清除 Token 和用户信息
WpStorage.clearBusinessData()

命名空间隔离

// 创建自定义命名空间
const appStorage = createStorage('app')
const webStorage = createStorage('web')

// 各命名空间数据互不干扰
appStorage.set('token', 'app_token')
webStorage.set('token', 'web_token')

appStorage.getToken()  // "app_token"
webStorage.getToken()  // "web_token"

// clear 只清除当前命名空间
appStorage.clear()     // 仅清除 app 命名空间数据
webStorage.getToken()  // "web_token" 不受影响

错误码

错误码 说明
9020001 存储空间不足
9020002 数据反序列化失败
9020003 键名格式非法
9020004 用户信息序列化失败

支持平台

  • Android
  • iOS
  • HarmonyOS

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。