使用插件pinia-plugin-persistedstate
npm i pinia-plugin-persistedstate -S
//main.ts
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
const pinia = createPinia()
pinia.use(piniaPluginPersistedstate)
export function createApp() {
const app = createSSRApp(App)
app.use(pinia)
return {
app,
pinia
}
}
import { defineStore } from 'pinia'
export const useGlobalStore = defineStore('global', {
state: () => {
return {
scrollBoxHeight: '',
locationAuth: false
}
},
getters: {},
actions: {},
persist: {
// 默认值,就是使用localStorage
// storage: localStorage
// 重写存取方法,转调给UniApp
storage: {
getItem(key) {
return uni.getStorageSync(key)
},
setItem(key, val) {
uni.setStorageSync(key, val)
}
}
}
})