Zarządzanie stanem · Junior · Pytanie 23 z 75
Po co owijać useContext we własny hook, np. useAuth()?
export function useAuth() {
const ctx = useContext(AuthContext);
if (!ctx) throw new Error("useAuth must be used within AuthProvider");
return ctx;
}- ✓Poprawna odpowiedź: Aby ukryć obiekt kontekstu i wyraźnie zgłosić błąd, gdy brakuje providera
- 2Bo
useContextnie można wywoływać bezpośrednio w komponentach - 3Aby wartość kontekstu była niezmienna
Wyjaśnienie
Konsumenci importują jeden hook zamiast obiektu kontekstu, TypeScript dostaje typ bez null, a zapomniany provider daje czytelny błąd zamiast undefined gdzieś głęboko w kodzie.