function UserProfile({ userId }) { const [user, setUser] = useState(null); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); useEffect(() => { // Fonction async dans useEffect const fetchUser = async () => { setLoading(true); setError(null); try { const response = await fetch(`/api/users/${userId}`); const data = await response.json(); setUser(data); } catch (err) { setError(err.message); } finally { setLoading(false); } }; fetchUser(); }, [userId]); // Re-fetch quand userId change if (loading) return
Chargement...
; if (error) returnErreur : {error}
; if (!user) return null; return