بنقرة واحدة
nextjs-data-fetching
Next.js AppRouter における、データフェッチング、データベースへのクエリ発行のベストプラクティス。データフェッチを伴う処理を実装、変更する場合はこのドキュメントを参照すること。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Next.js AppRouter における、データフェッチング、データベースへのクエリ発行のベストプラクティス。データフェッチを伴う処理を実装、変更する場合はこのドキュメントを参照すること。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
GitHub に関する全ての操作やこのプロジェクトの GitHub に関する情報が欲しい時に呼び出されるスキル(PR, Issue)
git に関する全ての操作やこのプロジェクトのgitに関する情報が欲しい時に呼び出されるスキル(branch, commit, push, pull, merge ...)
Find deepening opportunities in a codebase, informed by the domain language in CONTEXT.md and the decisions in docs/adr/. Use when the user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more testable and AI-navigable.
app 側のページ実装を `@playlistwizard/ui` へページ単位で移行するための方針。`@/components/ui/*` import の置換、共通コンポーネント化、既存表示差分の抑制、packages/ui 側の variant 設計を伴う作業で参照すること。
Notion の仕様ページをレビューし、セキュリティ・考慮漏れ・既存実装との整合性などの問題点をコメントとして報告するスキル。「仕様をレビューして」「スペックをチェックして」「review-spec」などの指示で呼び出される。
ユーザーと対話しながら機能仕様を策定し、Notion に自動でドキュメント化するスキル。「仕様を作ろう」「スペックを書いて」「仕様を詰めよう」などの指示で呼び出される。
| name | nextjs-data-fetching |
| description | Next.js AppRouter における、データフェッチング、データベースへのクエリ発行のベストプラクティス。データフェッチを伴う処理を実装、変更する場合はこのドキュメントを参照すること。 |
ここでのデータフェッチは以下のようなものを含む。
サーバーサイドでのデータフェッチングは以下のようなコードで行う。 要点:
import { Suspense } from "react";
export function SomePage() {
return (
<>
<Header />
<Suspense fallback={<BarLoading />}>
<Bar />
</Suspense>
</>
);
}
export function BarLoading() {
return <div>Loading...</div>;
}
export async function Bar() {
const res = await fetch("https://example.com");
const data = await res.json();
return <div>{data}</div>;
}
サーバーコンポーネントでのデータフェッチにおける Suspense の仕様に関しては、 Server-side Data Fetching セクションを参照。
以下ではクライアントサイドにおける Suspense の使用のガイドラインを示す。 要点は以下:
クライアントサイドでの Tanstack Query を使用したデータフェッチで、ページ読み込み時にもデータが必要な場合は、サーバーサイドで prefetch することが推奨される。 これにより、ユーザー操作の伴わない Tanstack Query のデータフェッチをサーバーサイドで行うことができ、クライアントに比べ比較的ネットワーク環境が安定しているサーバーサイドでデータフェッチを行うことで、パフォーマンスの向上につながる。
// page.tsx(サーバーコンポーネント)
import {
dehydrate,
HydrationBoundary,
QueryClient,
} from "@tanstack/react-query";
export default async function Page() {
const queryClient = new QueryClient();
await queryClient.prefetchQuery({
queryKey: ["posts"],
queryFn: fetchPosts,
});
return (
<HydrationBoundary state={dehydrate(queryClient)}>
<Posts />
</HydrationBoundary>
);
}
// Posts.tsx
'use client';
export function Posts() {
const { data } = useQuery({
queryKey: ["posts"],
queryFn: fetchPosts,
});
return <div>{data}</div>;
}