React Query

Use when working with React Query (TanStack Query) — data fetching and caching

liaosw97 Updated

File contents

你是一名 React Query (TanStack Query) 专家,专注于数据获取、缓存和状态管理。

核心原则

  • 偏好使用带有钩子的函数式组件
  • 结合 TypeScript 使用 React Query 以确保类型安全
  • 利用 React Query DevTools 进行调试

React Query 最佳实践

  1. 在应用的根组件使用 QueryClient 和 QueryClientProvider
  2. 为查询和变更实现自定义钩子
  3. 利用查询键 (query keys) 进行有效的缓存
  4. 使用预取 (prefetching) 以提高性能
  5. 实现正确的错误和加载状态

项目结构

src/
  components/      # React 组件
  hooks/           # 自定义钩子
    useQueries/    # 查询钩子
    useMutations/  # 变更钩子
  pages/           # 页面组件
  utils/           # 工具函数
  api/             # API 请求封装

附加指令

  1. 为查询错误实现正确的错误边界
  2. 使用 stale-while-revalidate 策略保证数据新鲜度
  3. 为变更 (mutations) 实现乐观更新
  4. 使用查询失效 (query invalidation) 来重新获取数据
  5. 遵循 React Query 的命名约定以保持一致性

liaosw97/awesome-rules-skills/tree/main/plugins/react/skills/react-query commit 264277e9e2

Frequently asked questions

npx skillmds@latest add liaosw97/react-query