logo

motiff.clientStorage

motiff.clientStorage API 允许插件将数据存储于用户本地,与文档数据(例如 setPluginData )不同,此数据不会跨用户同步。类似于 Window.localStorage API,清除浏览器缓存等用户操作可能会清除所有存储的数据,不同之处在于,它是异步的,并允许存储对象、数组、字符串、数字、布尔值、null、undefined 和 Uint8Array。

motiff.clientStorage 存储的数据根据插件 Id 进行区分,因此当前插件无法读取其它插件存储的数据,若需要跨插件共享数据,可以使用 setSharedPluginData API。

motiff.clientStorage API 的读写删除操作都是异步,有 getAsyncsetAsyncdeleteAsynckeysAsync 四个方法。

getAsync(key: string): Promise<any | undefined>

检索 client storage 中键 key 对应的值。若该键未存储任何值,则异步返回 undefined

setAsync(key: string, value: any): Promise

设置 client storage 中键 key 对应的值为 value,若设置成功,则 Promise 将会 resolve(),否则将会 reject()

deleteAsync(key: string): Promise

删除 client storage 中键 key 对应的值。

keysAsync(): Promise<string[]>

检索 client storage 中的所有键,返回键列表。可以使用该列表枚举 client storage 中的全部内容。