Standardowy sposób korzystania z React useState Hook jest następujący:
const [count, setCount] = useState(0);
Jednak ta const count
zmienna zostanie wyraźnie przypisana do innej pierwotnej wartości.
Dlaczego zatem zmienna nie jest zdefiniowana jako let count
?
Odpowiedzi:
Nie całkiem. Gdy komponent jest ponownie generowany, funkcja jest wykonywana ponownie, tworząc nowy zakres, tworząc nową
count
zmienną, która nie ma nic wspólnego z poprzednią zmienną.Przykład:
Uwaga: Haczyki są o wiele bardziej wyrafinowane i nie są tak zaimplementowane. Ma to na celu jedynie wykazanie podobnego zachowania.
źródło
const
chroni przed ponownym przypisaniem wartości referencji w tym samym zakresie.Z MDN
Również
źródło
Technicznie jest to nowa zmienna przy każdym renderowaniu.
Źródło: React Github problem: Dokumenty - Haki: czy to literówka?
źródło
tutaj odkryłem, że const był frustrujący, ponieważ liczba musi się zmienić
źródło