Vue3中使用Pinia

Pinia 是 Vue 的存储库,它允许您跨组件/页面共享状态。 如果您熟悉 Composition API,您可能会认为您已经可以通过一个简单的 export const state = reactive({}). 这对于单页应用程序来说是正确的,但如果它是服务器端呈现的,会使您的应用程序暴露于安全漏洞。

1、安装pinia

npm i pinia

2、引入Pinia

// main.ts 引入及应用
import { createPinia } from 'pinia'
// 第二步:创建pinia
const pinia = createPinia()
// 第三步:安装pinia
app.use(pinia)

3、store文件夹里创建用户信息相关的user.ts

import { defineStore } from'pinia'

export const useuserstore = defineStore ('userInfo',{
    //真正存储数据的地方
    state() {
        return {
            userInfo: { account: 'admin', password: '123456' },
        }
    }
})

4、应用

import {useuserstore} from "@/store/user.ts";

1、第一种方法
const userStore = useuserstore()
console.log(userStore.userInfo)
// 修改store
userStore.$patch({
 account: 'user', password: '123456'
})
console.log(userStore.userInfo)

2、第二种方法
export const useuserstore = defineStore ('userInfo',{
    actions: {
        setUserInfo(userInfo: any){
            this.userInfo = userInfo
        }
    },
    //真正存储数据的地方
    state() {
        return {
            userInfo: {},
        }
    }
})
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容