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 };
}