让我们一起走向未来
🎓作者简介:全栈领域优质创作者
🌐个人主页:百锦再@新空间代码工作室
📞工作室:新空间代码工作室(提供各种软件服务)
💌个人邮箱:[15045666310@163.com]
📱个人微信:15045666310
🌐网站:https://meihua150.cn/
💡座右铭:坚持自己的坚持,不要迷失自己!要快乐
目录
Pinia 简介
Pinia 是 Vue 的专属状态管理库,专为 Vue 3 设计,旨在替代 Vuex,提供更简单、直观的状态管理解决方案。Pinia 的设计理念是简单、易于学习和使用,支持组合式 API 和选项式 API。它允许跨组件或页面共享状态,避免了 Vuex 中的许多复杂概念。
安装 Pinia
安装 Pinia 非常简单,可以通过 npm 或 yarn 完成:
npm install pinia --save
# 或者
yarn add pinia
创建 Store
在 Pinia 中,状态管理的核心是 Store。Store 可以理解为一个包含状态、getters 和 actions 的对象。以下是一个创建 Store 的基本示例:
// stores/user.js
import {
defineStore } from 'pinia';
export const useUserStore = defineStore('user', {
state: () => ({
isLoggedIn: false,
user: null
}),
actions: {
login(user) {
this.isLoggedIn = true;
this.user = user;
},
logout() {
this.isLoggedIn = false;
this.user = null;
}
},
getters: {
isUserLoggedIn: (state) => state.isLoggedIn,
currentUser: (state) => state.user
}
});
注册 Store
在主应用文件中注册 Pinia 和 Store:
// main.js
import {
createApp } from 'vue';
import {
createPinia } from 'pinia';
import App from './App.vue';
import {
useUserStore } from './stores/user'