安装插件

npm install pinia --save

npm install pinia-plugin-persist --save // 状态持久化


app.ts

import piniaPluginPersist from 'pinia-plugin-persist'
const app = createApp(App)
const store = createPinia()
app.use(store)
app.use(router)
store.use(piniaPluginPersist) // 状态持久化
app.mount('#app')


stores ts 编写

import { defineStore } from 'pinia'
const UserStore = defineStore('userStore', {
    state: () => ({
        name: 'asdfasdf'
    }),
    actions: {
        updateName(name: string) {
            this.name = name
        }
    },
   persist: {
        enabled: true, // 开启持久化
        strategies: [
            {
                storage: localStorage,
            }
        ]
    }
})
export default UserStore


页面调用

<script lang="ts" setup>
import UserStore from '@/stores/user';
const userStore = UserStore();
console.info(userStore.name)
setTimeout(() => {
    userStore.updateName("asdfasd")
}, 1000);
</script>