Skip to content

提供插件私有的键值存储,数据保存在插件目录 data/storage.json 中。 API 签名:LocalStorage.setItem(key: string, value: unknown)LocalStorage.getItem<T>(key)。 内部以 JSON 写入磁盘,传入非 JSON 可序列化的值将报错。

UI 环境使用:

ts
import { LocalStorage } from '@sofastapp/api';

await LocalStorage.setItem('k', 'v');
const v = await LocalStorage.getItem<string>('k');
const all = await LocalStorage.allItems<Record<string, any>>();
await LocalStorage.removeItem('k');
await LocalStorage.clear();

No-View 环境使用:

ts
import { LocalStorage } from '@sofastapp/api/node';

const n = (await LocalStorage.getItem<number>('counter')) ?? 0;
await LocalStorage.setItem('counter', n + 1);

// 对象/数组同样支持
await LocalStorage.setItem('profile', { name: 'Alice', tags: ['a', 'b'] });
const profile = await LocalStorage.getItem<{ name: string; tags: string[] }>('profile');