| 項目 | 内容 |
|---|---|
| 制限時間 | ありません |
| 配点 | 100点(各問 25点) |
| 合格ライン | 60点 |
| 問題 | テーマ | 編集対象ファイル |
|---|---|---|
| Q1 | Props の型定義 | src/q1-type-definition/UserCard.tsx |
| Q2 | useState / useEffect | src/q2-hooks-basics/UserList.tsx |
| Q3 | カスタムフック | src/q3-custom-hook/useForm.ts |
| Q4 | コンポーネント分割 | src/q4-refactor/ 配下(後述) |
TaskManager.original.tsx(参考・読み取り専用)を元に、以下のファイルを実装してください。
src/q4-refactor/types.tssrc/q4-refactor/components/TaskForm.tsxsrc/q4-refactor/components/TaskFilter.tsxsrc/q4-refactor/components/TaskItem.tsxsrc/q4-refactor/components/TaskList.tsxsrc/q4-refactor/TaskManager.tsx
- 各ファイルの
TODOコメントに従って実装してください *.test.tsx/*.test.tsファイルは 編集禁止 です- 外部ライブラリの追加は禁止です(React 標準の機能のみ使用可)
- AI ツール(ChatGPT, GitHub Copilot 等)の使用は禁止です
- Node.js 18 以上
- npm
- Git
- GitHub アカウント(お持ちでない方は こちら から作成してください)
- このリポジトリ右上の 「Fork」 ボタンをクリック
- 自分のアカウントにコピーが作成されます
- フォークしたリポジトリをクローン:
git clone https://github.com/<あなたのユーザー名>/worksample-frontend.git
cd worksample-frontend- 依存パッケージをインストール:
npm install- テストが実行できることを確認:
npm test全テストが FAIL になれば正常です(まだ実装していないため)。
- 各問題の対象ファイルを開き、
TODOコメントに従って実装してください - 問題ごとにコミットすることを推奨します:
# 例: Q1 完了時
git add .
git commit -m "Q1: UserCardProps 型定義を実装"npm test # 全テスト実行
npm run test:verbose # 詳細表示- 実装内容を push:
git push origin main-
GitHub 上でフォーク元のリポジトリに Pull Request を作成:
- フォークしたリポジトリのページを開く
- 「Contribute」→「Open pull request」 をクリック
- PR タイトル:
【受験】氏名(例:【受験】田中太郎) - PR 本文に以下を記載:
- 氏名
npm run test:verboseの実行結果(コピー&ペースト)- 実装で工夫した点や苦労した点(任意)
-
PR を作成したら完了です。お疲れ様でした!
Q: テストが通らないが、実装は正しいと思う
A: data-testid の値がテストの期待値と一致しているか確認してください。テストファイル内のアサーションが求める構造を参考にしてください。
Q: Q4 はどこまで分割すればいい?
A: テストファイルで import("./components/TaskForm") 等をチェックしているため、指定された4つのコンポーネントファイルは必ず作成してください。