Quasar 提供了 Web Storage API 的封裝器。
提示
Web Storage API 僅檢索字串。Quasar 檢索具有其原始資料類型的資料。 您告訴它儲存一個數字,然後檢索它,它仍然會是一個數字,而不是像 Web Storage API 那樣的數字的字串表示形式。JSON、正則表達式、日期、布林值等等也是如此。
關於 SSR 的注意事項
在 SSR 建置上伺服器端執行程式碼時,此功能無法運作。Web Storage 僅是瀏覽器 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
對於設定值時的萬無一失的方法,最好也捕獲底層 Local/Session Storage 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 Storage 支援(但不限於)以下開箱即用的資料類型。如果您儲存這些類型之一,則檢索到的資料將具有相同的資料類型。
- 日期
- 正則表達式
- 數字
- 布林值
- 字串
- 純 Javascript 物件
如果您儲存任何其他資料類型,則傳回的值將為字串。
因此,您甚至可以儲存函數,但請注意,您需要 eval() 傳回的值(這是函數的字串表示形式)。