Aktywne Wpisy
Zawiera treści 18+
Ta treść została oznaczona jako materiał kontrowersyjny lub dla dorosłych.
Ca_millo +37
Huop w szpitalu w Holandii leży. Ehh. Zabrali mnie z Actiona karetką.
#przegryw #przegrywnaemigracji
#przegryw #przegrywnaemigracji
let [test, setTest] = useState([]);
Wygląda na to, że jak w useEffect zrobiłem:
let x = test;
to nie skopiowałem wartości do x tylko tak naprawdę dalej operuję na zmiennej test
Z tego co wiem to nie powinienem operować na zmiennej test bo użyłem useEffect.
Powinienem ją ustawiać za pomocą setTest.
Jak prawidłowo skopiować wartości z test tak, żeby x nie wskazywało na test ?
#react #javascript
let x = [...test]
let x = JSON.parse(JSON.stringify(test))
W dużym skrócie, w JSie jeśli przypisujesz wartość do tzw. primitives (np. string, number, boolean, null), to dane te są niemutowalne. Tworzy się "kopia" tej informacji.
Jeśli jednak robisz przypisanie x = test (gdzie test to np. obiekt), to tak naprawdę nie tworzy się kopia danych, ale tworzysz nową referencję. Zmienna x po prostu wskazuje na zmienną test, która to wskazuje na jakieś
wypdaloby sie nauczyc podstaw JSa nim przystapi sie do reacta ( ͡~ ͜ʖ ͡°)