# Pinia 全局状态管理使用示例 ## 1. 基础使用方法 ### 在任意组件中使用全局状态 ```vue ``` ## 2. 页面间数据传递示例 ### 页面A - 设置数据 ```vue ``` ### 页面B - 获取数据 ```vue ``` ## 3. 批量操作示例 ```javascript import { useGlobalStore } from '@/store/globalStore' const globalStore = useGlobalStore() // 批量设置多个键值对 globalStore.setMultipleValues({ appConfig: { theme: 'dark', language: 'zh-CN' }, userPreferences: { notifications: true, fontSize: 16 }, lastUpdated: new Date().toISOString() }) // 获取所有全局数据 const allData = globalStore.getAllData() console.log('所有全局数据:', allData) // 清空所有数据 globalStore.clearAll() ``` ## 4. 用户状态管理示例 ```vue ``` ## 5. 注意事项 1. **数据持久化**:默认情况下,Pinia状态只在内存中存在,页面刷新后会丢失。如果需要持久化,可以考虑: - 使用localStorage/sessionStorage结合Pinia插件 - 使用Cookie存储关键信息 2. **性能考虑**:避免在全局状态中存储过大的数据,这可能会影响应用性能 3. **类型安全**:如果使用TypeScript,可以为store添加类型定义 4. **模块化**:随着应用复杂度增加,可以考虑将不同功能的数据分开存储到多个store中 5. **调试**:Pinia提供了良好的开发工具支持,可以通过Vue Devtools进行调试