スキル一覧に戻る
HoangNguyen0403

nextjs-server-components

by HoangNguyen0403

nextjs-server-componentsは、other分野における実用的なスキルです。複雑な課題への対応力を強化し、業務効率と成果の質を改善します。

111🍴 40📅 2026年1月23日
GitHubで見るManusで実行

SKILL.md


name: Next.js Server Components description: RSC usage, "use client" directive, and Component Purity. metadata: labels: [nextjs, rsc, components] triggers: files: ['/*.tsx', '/*.jsx'] keywords: [use client, Server Component, Client Component, hydration]

Server & Client Components

Priority: P0 (CRITICAL)

Next.js (App Router) uses React Server Components (RSC) by default.

Server Components (Default)

  • Behavior: Rendered on server, sent as HTML/Payload to client. Zero bundle size for included libs.
  • Capabilities: Async/Await, Direct DB access, Secrets usage.
  • Restrictions: No useState, useEffect, or Browser APIs (window, localstorage).

Client Components

  • Directive: Add 'use client' at the VERY TOP of the file.
  • Usage: Interactivity (onClick), State (useState), Lifecycle effects, Browser APIs.
  • Strategy: Move Client Components to the leaves of the tree.
    • Bad: Making the root layout a Client Component.
    • Good: Wrapping a <Button /> in a Client Component.

Composition Patterns

  • Server-in-Client: You cannot import a Server Component directly into a Client Component.
    • Fix: Pass Server Component as children prop to the Client Component.
// ClientWrapper.tsx
'use client';
export default function ClientWrapper({ children }) {
  return <div>{children}</div>;
}

// Page.tsx (Server)
<ClientWrapper>
  <ServerComponent />
</ClientWrapper>;

Anti-Patterns

  • Poisoning: Importing server-only secrets into Client Components (Use server-only package to prevent).
  • Over-fetching: Passing large data props to Client Components (Serialization cost). Only pass IDs if possible.

スコア

総合スコア

85/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

+5
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

+5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

レビュー

💬

レビュー機能は近日公開予定です