File size: 729 Bytes
6dd9bad | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | import { useState, useEffect } from 'react';
import { apiClient } from '../lib/api';
export function useStudentData(phone: string | undefined) {
const [data, setData] = useState<any>(null);
const [loading, setLoading] = useState(true);
const [error, setError] = useState<string | null>(null);
useEffect(() => {
if (!phone) {
setLoading(false);
return;
}
setLoading(true);
apiClient.getStudent(phone)
.then(setData)
.catch(err => {
setError(err.message || 'Impossible de charger tes données.');
})
.finally(() => setLoading(false));
}, [phone]);
return { data, loading, error };
}
|