import { useEffect, useState } from 'react'; export type User = { id: number; name: string }; export function UserList({ users, onSelect, }: { users: User[]; onSelect: (user: User) => void; }) { // TODO: users.map으로 <li>를 렌더하고 클릭 시 onSelect(user) 호출 return <ul data-testid="user-list"></ul>; } export function UserListContainer({ getUsers, onSelect, }: { getUsers: () => Promise<User[]>; onSelect: (user: User) => void; }) { // TODO: useState로 users 보관, useEffect로 getUsers() 호출 // TODO: 로딩 중에는 "Loading..." 표시, 로드 끝나면 <UserList /> 렌더 return <div>Loading...</div>; }
Tests