zustand-store-ts by sickn33/antigravity-awesome-skills
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill zustand-store-ts遵循既定模式创建 Zustand 存储,包含正确的 TypeScript 类型和中间件。
从 assets/template.ts 复制模板并替换占位符:
{{StoreName}} → 帕斯卡命名法的存储名称(例如:Project){{description}} → JSDoc 的简要描述import { create } from 'zustand';
import { subscribeWithSelector } from 'zustand/middleware';
export const useMyStore = create<MyStore>()(
subscribeWithSelector((set, get) => ({
// 状态和操作
}))
);
export interface MyState {
items: Item[];
isLoading: boolean;
}
export interface MyActions {
addItem: (item: Item) => void;
loadItems: () => Promise<void>;
}
export type MyStore = MyState & MyActions;
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
// 良好做法 - 仅在 `items` 变化时重新渲染
const items = useMyStore((state) => state.items);
// 避免 - 任何状态变化都会导致重新渲染
const { items, isLoading } = useMyStore();
useMyStore.subscribe(
(state) => state.selectedId,
(selectedId) => console.log('已选择:', selectedId)
);
src/frontend/src/store/ 中创建存储src/frontend/src/store/index.ts 导出src/frontend/src/store/*.test.ts 中添加测试此技能适用于执行概述中描述的工作流程或操作。
每周安装量
121
代码仓库
GitHub 星标数
27.6K
首次出现
2026年2月13日
安全审计
已安装于
codex108
opencode107
gemini-cli106
github-copilot106
amp106
kimi-cli106
Create Zustand stores following established patterns with proper TypeScript types and middleware.
Copy the template from assets/template.ts and replace placeholders:
{{StoreName}} → PascalCase store name (e.g., Project){{description}} → Brief description for JSDocimport { create } from 'zustand';
import { subscribeWithSelector } from 'zustand/middleware';
export const useMyStore = create<MyStore>()(
subscribeWithSelector((set, get) => ({
// state and actions
}))
);
export interface MyState {
items: Item[];
isLoading: boolean;
}
export interface MyActions {
addItem: (item: Item) => void;
loadItems: () => Promise<void>;
}
export type MyStore = MyState & MyActions;
// Good - only re-renders when `items` changes
const items = useMyStore((state) => state.items);
// Avoid - re-renders on any state change
const { items, isLoading } = useMyStore();
useMyStore.subscribe(
(state) => state.selectedId,
(selectedId) => console.log('Selected:', selectedId)
);
src/frontend/src/store/src/frontend/src/store/index.tssrc/frontend/src/store/*.test.tsThis skill is applicable to execute the workflow or actions described in the overview.
Weekly Installs
121
Repository
GitHub Stars
27.6K
First Seen
Feb 13, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
codex108
opencode107
gemini-cli106
github-copilot106
amp106
kimi-cli106
TanStack Query v5 完全指南:React 数据管理、乐观更新、离线支持
2,500 周安装
TanStack Query (React Query) 教程:React 异步状态管理与数据获取库
239 周安装
科学问题选择技能:基于Cell论文的科研项目决策框架,提升研究影响力
251 周安装
MongoDB与PostgreSQL数据库指南:选择、查询、优化与部署实战
236 周安装
资深架构师AI助手 - Claude高级架构设计技能,提升系统架构与代码质量
235 周安装
Polymarket交易员分析工具:追踪链上交易活动与持仓数据
237 周安装
Next.js开发技能:构建现代全栈Web应用指南(App Router/服务器组件/SEO优化)
70 周安装