学习鸿蒙,我学到的东西与浅显理解(1-8、首选项)

62 阅读1分钟

首选项 (持久化存储)

适用于对 { key: value } 结构的数据进行存取,和持久化保存

  • key: string 长度不超过 1024 字节
  • value: string | number | boolean 长度不超过 16*1024*1024 字节
  • 建议存储的条数不超过 1 万条,否则内存会有较大开销
import { preferences } from '@kit.ArkData'

// 下面,假设我们要保存用户选择的字号大小
const keyName = 'fontSize'

// 当前软件内,用户选择的字体大小为 16
const fontSize = 16

// 获取指定的 preference 实例
const preference: preferences.Preferences = await preferences.getPreferences(getContext(this), 'myPreference')

// 先检查指定 key 的配置是否存在
const isExits: boolean = await preference.has(keyName)

// 如果不存在,再保存
if(!isExits) {
  // 插入值
  await preference.put(keyName, fontSize)
  // 保存到文件里
  await preference.flush()
}

// 下次打开 App,就可以读取到,用户原先保存的字号大小了
const fSize = await preference.get(keyName, 12)

// 以上就是保存于读取的示例
// 下面是其它的方法:

preference.getAll()
preference.delete()
preference.clear()
preference.on()
preference.off()

preferences.deletePreferences()

系列文章


参考资料


写在最后

  • 不是教程,只是学习记录
  • 包含了一些自己的理解,一边学一边写的,难免有不对的地方
  • 写出来希望能与大家探讨,看到有错误的地方,望大家指正~