Vue3 Pinia的创建与使用代替Vuex 全局数据共享 同步异步
创始人
2024-11-19 09:07:21
0

介绍

提供跨组件和页面的共享状态能力,作为Vuex的替代品,专为Vue3设计的状态管理库。

  • Vuex:在Vuex中,更改状态必须通过Mutation或Action完成,手动触发更新。
  • Pinia:Pinia的状态是响应式的,当状态发生变化时,组件会自动更新,无需手动触发。

官方文档 :https://pinia.vuejs.org/zh/getting-started.html

使用Pinia对用户的登录信息进行保存

安装

npm install pinia 

引入

import { createApp } from 'vue' import App from './App.vue' import { createPinia } from 'pinia' const app =createApp(App) app.use(createPinia()) app.mount('#app') 

定义Stroe

目录结构:src/store/user.js

import  {defineStore} from  'pinia' import {reactive, ref} from "vue"; //导入pinia  //user表示模块名 export const useUser =defineStore('user',()=>{      //定义数据(state)d     const userId=ref(6699)     //用户ID     const level =ref(10) //等级     const userMsg=reactive({         token:'addadgsadadadada',         phone:'13111111111',         age:13     })     //用户信息  	 const list =ref([])            //操作数据的函数(action 同步+异步)     const updateUser=(newUserId)=>{         userId.value=newUserId     } 	//修改账号信息      //数据返回出去 注:对象的形式     return{         userId,         updateUser,         userMsg     } }) 

读取Stroe

 
 

读取成功
在这里插入图片描述

修改Stroe

 

Action异步

Store

// src/store/user.js  const getList=async  ()=>{     const res =await axios.get('https://tools.mgtv100.com/external/v1/bank_names').then(r=>{         list.value=r.data.data     })  } 

组件

  
{{item.bank_name}}
onMounted(()=>{   getList() })  function getList(){   userStore.getList() } 

在这里插入图片描述


Getter计算

 

src/store/user.js

//getter     const cmpLevel=computed(()=>{         return level.value*2         //该函数用来计算等级     })  return {cmpLevel} // src/store/user.js 

在这里插入图片描述

相关内容

热门资讯

6分钟了解!手游游戏挂机辅助(... 6分钟了解!手游游戏挂机辅助(辅助)福运开挂辅助辅助-切实存在有插件6分钟了解!手游游戏挂机辅助(辅...
第四分钟了解!创思维激k怎么开... 第四分钟了解!创思维激k怎么开挂(辅助)JJ斗地主开挂辅助安装-都是真的是有下载1、每一步都需要思考...
第八分钟了解!皇豪互众智能辅助... 第八分钟了解!皇豪互众智能辅助器破解(辅助)星火燎原开挂辅助下载-本来是真的神器1、皇豪互众智能辅助...
三分钟了解!途游大作战辅助(辅... 三分钟了解!途游大作战辅助(辅助)中至余干麻将开挂辅助软件-都是有挂平台1、让任何用户在无需途游大作...
6分钟了解!推荐一下胡乐辅助脚... 6分钟了解!推荐一下胡乐辅助脚本的教程(辅助)达达开挂辅助辅助器-果然存在有平台1、玩家可以在推荐一...
六分钟了解!衢州都莱罗松怎么才... 六分钟了解!衢州都莱罗松怎么才能赢(辅助)白金岛游戏开挂辅助脚本-确实是有平台该软件可以轻松地帮助玩...
第9分钟了解!天天透视辅助工具... 第9分钟了解!天天透视辅助工具(辅助)大巴斗地主开挂辅助修改器-一贯是真的软件1、金币登录送、破产送...
第四分钟了解!乐酷辅助(辅助)... 第四分钟了解!乐酷辅助(辅助)新时代开挂辅助脚本-都是真的是有辅助第四分钟了解!乐酷辅助(辅助)新时...
十分钟了解!决战十水三余音(辅... 十分钟了解!决战十水三余音(辅助)8522TV开挂辅助辅助器-总是是有辅助器1、游戏颠覆性的策略玩法...
第6分钟了解!奕乐贵州麻将有挂... 第6分钟了解!奕乐贵州麻将有挂确实有辅助(辅助)美味冰淇淋开挂辅助平台-总是有挂辅助1、奕乐贵州麻将...