Pinia pinia

Pinia是Vue.js官方状态管理库,提供类型安全、可扩展的状态管理解决方案。本技能涵盖Pinia核心概念、功能特性、最佳实践及高级应用,帮助开发者掌握Vue应用状态管理、存储定义、响应式数据处理、插件开发、SSR集成、单元测试等关键技术。适用于Vue 2/3项目开发,提升前端应用架构质量。

前端开发 0 次安装 0 次浏览 更新于 3/1/2026

name: pinia description: Pinia官方Vue状态管理库,类型安全且可扩展。用于在Vue应用中定义存储、处理状态/获取器/操作或实现存储模式。 metadata: author: Anthony Fu version: “2026.1.28” source: 生成自 https://github.com/vuejs/pinia,脚本位于 https://github.com/antfu/skills

Pinia

Pinia是Vue官方状态管理库,设计直观且类型安全。它同时支持选项式API和组合式API风格,提供一流的TypeScript支持和开发者工具集成。

此技能基于Pinia v3.0.4,生成于2026-01-28。

核心参考

主题 描述 参考文档
存储 定义存储、状态、获取器、操作、storeToRefs、订阅 core-stores

功能特性

可扩展性

主题 描述 参考文档
插件 使用自定义属性、状态和行为扩展存储 features-plugins

组合性

主题 描述 参考文档
组合式函数 在存储中使用Vue组合式函数(VueUse等) features-composables
组合存储 存储间通信,避免循环依赖 features-composing-stores

最佳实践

主题 描述 参考文档
测试 使用@pinia/testing进行单元测试、模拟、桩 best-practices-testing
组件外使用 在导航守卫、插件、中间件中使用存储 best-practices-outside-component

高级主题

主题 描述 参考文档
SSR 服务器端渲染、状态水合 advanced-ssr
Nuxt Nuxt集成、自动导入、SSR最佳实践 advanced-nuxt
HMR 开发环境热模块替换 advanced-hmr

关键建议

  • 优先使用Setup存储处理复杂逻辑、组合式函数和侦听器
  • **使用storeToRefs()**解构状态/获取器时保持响应性
  • 操作可直接解构 - 它们已绑定到存储
  • 在函数内部调用存储而非模块作用域,尤其对于SSR
  • 为每个存储添加HMR支持以获得更好的开发体验
  • **使用@pinia/testing**进行带有模拟存储的组件测试