Quasar 为 Web 存储 API 提供了包装器。
提示
Web 存储 API 仅检索字符串。 **Quasar 使用其原始数据类型检索数据。** 您告诉它存储一个数字,然后检索它,它仍然是一个数字,而不是像 Web 存储 API 那样是数字的字符串表示。 JSON、正则表达式、日期、布尔值等也是如此。
关于 SSR 的说明
在 SSR 构建中服务器端运行代码时,此功能无法正常工作。 Web 存储仅是浏览器 API。 但是,您可以使用 SSR 在客户端使用它。
// quasar.config file
return {
framework: {
plugins: [
'LocalStorage',
'SessionStorage'
]
}
}
content_paste
用法
import { LocalStorage, SessionStorage } from 'quasar'
LocalStorage.set(key, value)
let value = LocalStorage.getItem(key)
SessionStorage.set(key, value)
let value = SessionStorage.getItem(key)
content_paste
import { useQuasar } from 'quasar'
setup () {
const $q = useQuasar()
$q.localStorage.set(key, value)
const value = $q.localStorage.getItem(key)
$q.sessionStorage.set(key, value)
const otherValue = $q.sessionStorage.getItem(key)
}
content_paste
为了在设置值时采用万无一失的方法,最好也捕获底层本地/会话存储 Web API 引发的任何潜在错误,例如超过配额时
try {
$q.localStorage.set(key, value)
} catch (e) {
// data wasn't successfully saved due to
// a Web Storage API error
}
content_paste
提示
有关方法的完整列表,请查看 API 部分。
数据类型
Quasar 存储开箱即用地支持以下数据类型(但不限于)。 如果您存储其中一种类型,则检索到的数据将具有相同的数据类型。
- 日期
- 正则表达式
- 数字
- 布尔值
- 字符串
- 纯 Javascript 对象
如果您存储任何 *其他* 数据类型,则返回值将为字符串。
因此,您甚至可以存储函数,但请注意,您需要评估() 返回值(它是函数的字符串表示形式)。