想要在 uniapp
里面使用 pinia-plugin-persistedstate
會(huì)遇到的問題就是 uniapp里面沒有瀏覽器里面的 sessionStorage localStorage
這些 api
。
我們只需要替換掉 pinia-plugin-persistedstate
默認(rèn)的儲(chǔ)存 api
就可以了。使用 createPersistedState 重新創(chuàng)建一個(gè)實(shí)例, 把里面的 storage 的參數(shù)修改為對(duì)應(yīng)的 uniapp 里面的 storage api 就可以. 已經(jīng)提取在 customStorage 函數(shù)里面了.文章來源地址http://www.zghlxwxcb.cn/news/detail-715907.html
import 'virtual:uno.css'
import { createSSRApp } from "vue";
import uviewPlus from 'uview-plus'
import { createPinia } from 'pinia'
import { createPersistedState } from 'pinia-plugin-persistedstate'
import App from "./App.vue";
export function createApp() {
const pinia = createPinia()
pinia.use(customStorage())
const app = createSSRApp(App);
app.use(uviewPlus)
app.use(pinia)
return {
app,
pinia
};
}
/**
* @description 自定義pinia持久化api儲(chǔ)存方式為 unisetStorageSync
* @returns
*/
function customStorage() {
return createPersistedState({
storage: {
getItem(key: string) {
return uni.getStorageSync(key)
},
setItem(key: string, value: any) {
uni.setStorageSync(key, value)
}
}
})
}
文章來源:http://www.zghlxwxcb.cn/news/detail-715907.html
到了這里,關(guān)于如何在 uniapp 里面使用 pinia 數(shù)據(jù)持久化 (pinia-plugin-persistedstate)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!