本插件对原生的localstorage做封装:
注意: 为了防止其他操作随意添加或者添加存储,该插件会劫持localStorage的原生方法,只保留getItem的方法,其他的方法全部置为空方法。
import { LocalStorage } from "@yl/super-jssdk"
初始化方法,如果需要使用租户级或者用户级的存储,必须执行初始化,否则无法使用
LocalStorage.init('demo', '001');
| 参数 | 说明 | 类型 | 默认值 | 是否必填 |
|---|---|---|---|---|
| tenantCode | 租户code | String | 空 | 是 |
| userId | 用户id | String | 空 | 是 |
level对象,提供级别配置
LocalStorage.level.user; // 全局用户级
| 键 | 说明 |
|---|---|
| global | 全局 |
| tenant | 租户级 |
| user | 用户级 |
| product.tenant | 产品租户级 |
| product.user | 产品用户级 |
设置localstorage,支持设置时限
LocalStorage.set(
'zj',
'project-id',
'0001',
localstorage.level.global.user,
3600
);
| 参数 | 说明 | 类型 | 默认值 | 是否必填 | |
|---|---|---|---|---|---|
| key | 存储的key | String | 空 | 是 | |
| value | 存储的值(支持多类型) | any | null | 是 | |
| level | 存储的级别 | Number | 用户级 | 0 | 否 |
| expireTime | 存储时长(单位为S,表示存储多少秒) | Number | 0 | 否 | |
| appCode | 产品code | String | 空 | 产品级的存储必填 |
以字符串的形式获取对应的内容,过期或者不存在返回空字符串
LocalStorage.getString(
'zj',
'project-id',
localstorage.level.global.user
);
| 参数 | 说明 | 类型 | 默认值 | 是否必填 | |
|---|---|---|---|---|---|
| key | 存储的key | String | 空 | 是 | |
| level | 存储的级别 | Number | 用户级 | 0 | 否 |
| appCode | 产品code | String | 空 | 产品级的存储必填 |
返回内容的字符串,过期或不存在返回空
以对象的形式获取对应的内容,过期或者不存在返回false,如果值无法转为对象,则返回字符串
LocalStorage.getObject(
'zj',
'project-id',
localstorage.level.global.user
);
| 参数 | 说明 | 类型 | 默认值 | 是否必填 |
|---|---|---|---|---|
| key | 存储的key | String | 空 | 是 |
| level | 存储的级别 | Number | 用户级 | 否 |
| appCode | 产品code | String | 空 | 产品级的存储必填 |
返回内容的对象或字符串,过期或不存在返回空
设置需要被保护的缓存,在清除的时候不会被清除
LocalStorage.preserve(
'zj',
'project-id',
localstorage.level.global.user
);
| 参数 | 说明 | 类型 | 默认值 | 是否必填 |
|---|---|---|---|---|
| key | 存储的key | String | 空 | 是 |
| level | 存储的级别 | Number | 用户级 | 否 |
| appCode | 产品code | String | 空 | 产品级的存储必填 |
删除指定的项
LocalStorage.remove(
'zj',
'project-id',
localstorage.level.global.user
);
| 参数 | 说明 | 类型 | 默认值 | 是否必填 |
|---|---|---|---|---|
| key | 存储的key | String | 空 | 是 |
| level | 存储的级别 | Number | 用户级 | 否 |
| appCode | 产品code | String | 空 | 产品级的存储必填 |
清除本地所有缓存,除被保护的缓存之外
LocalStorage.clear();
清除成功后返回true