W tym celu powróciłem do tej aplikacji, nad którą pracowaliśmy, tej aplikacji celów, w której możemy
tutaj dodać kilka celów i to jest kod, który tam napisaliśmy, nic tam nie zmieniłem.
Teraz pokażę różne rzeczy, które mogą się nie udać, i sposób ich rozwiązania.
Zacznijmy więc od
prostego, powiedzmy, że mamy prosty błąd składniowy, tutaj w końcu otwieramy nasz modal, ustawiając tryb dodawania
na true,
pozwól mi usunąć ten nawias zamykający. To wyraźny błąd składniowy, to błąd, który
możemy i powinniśmy go całkowicie unikać, ponieważ jako programista popełniliśmy wyraźny błąd.
Dobrą rzeczą jest to, że nawet nasze IDE to rozpoznaje i daje nam ostrzeżenie tutaj, choć
niestety błąd, który tu pokazuje, nie
jest całkowicie poprawny, mówi, że oczekuje przecinka, cóż,
właściwie to nie jest prawdziwy problem, prawdziwy problem to brakujący wspornik.
Mimo to mamy wrażenie, że coś tu jest nie
tak i chociaż nadal musisz pomyśleć o tym problemie i nie możesz ślepo skorzystać z tego rozwiązania, patrząc na
ten kod, w pewnym momencie powinieneś dowiedzieć się, że brakuje brakującego nawiasu.
Nawet jeśli o tym zapomnisz i zapiszesz, powiedzmy, pakiet JavaScriptu zostanie tutaj zbudowany. Jak widzisz, uruchomiłem
go zarówno na Androidzie, jak i na iOS, a teraz pojawia się czerwony ekran błędów, o którym
mówiłem i jeszcze tutaj,
możemy po prostu odczytać komunikat o błędzie.
Nadal wskazuje nam niewłaściwe rozwiązanie, oczekując przecinka, ale wskazuje właściwą linię kodu, tutaj widać,
że ten tytuł przycisku dodaje nową linię celu, więc nadal pokazuje nam, gdzie powinniśmy szukać
i że problem jest prawdopodobnie pochodzący z tej linii.
Otrzymujemy ten sam błąd, tutaj w tej konsoli, a także w naszych narzędziach do tworzenia expo tutaj, tam pojawia się ten sam
komunikat o błędzie również z podpowiedzią na linii, z której pochodzi ten błąd, więc
otrzymujesz dużo pomoc w wyśledzeniu tego problemu. Teraz tutaj niestety nadal nie zauważam,
że naprawiłem ten błąd, a więc tutaj widzimy, że się zawiesił, na iOS na
Androida, nie ładuje
się ponownie. Teraz na
Androidzie widzimy polecenie, którego możemy użyć do przeładowania
aplikacji, możemy kliknąć tam w dół lub nacisnąć dwukrotnie r, aby przeładować, ale nadal nie odbiera zmiany tutaj, mimo że
naprawiłem to w kodzie, więc jednym
z rozwiązań jest tutaj po prostu zatrzymaj pakiet lub uruchom ponownie npm start.
Zdarza się to rzadko, ale czasami psuje się, a następnie wystarczy zrestartować proces uruchamiania
npm, a następnie
uruchomię go ponownie na Androidzie, naciskając ai iOS, naciskając i, a teraz powinno to ponownie
uruchomić aplikację na tych urządzeniach .
Znowu zdarza się to rzadko, ale czasem tak się dzieje i możesz po prostu zrestartować, aby
przywrócić to do prawidłowego działania.
Teraz, gdy to się znowu uruchomi, pozwól mi pokazać przykład komunikatu o błędzie, który pojawia się tam, gdzie
nie masz błędu składniowego, ale nadal masz wyraźny błąd w kodzie.
Powiedzmy, że kiedy dodajemy tutaj cel z tytułem celu, dodajemy sprawdzenie, w którym sprawdzamy, czy długość tytułu celu jest większa od zera, aby
sprawdzić, czy wartość nie jest pusta lub czy w rzeczywistości jest równa zeru, co oznacza, że użytkownik nie
„ t wpisz tytuł, w tym
przypadku po prostu wracamy, co oznacza, że nie dodamy tutaj tego celu, a także nie zamierzamy zamykać
modalu, dlatego
ignorujemy dane wprowadzone przez użytkownika, ponieważ są puste.
Możemy chcieć wyświetlić komunikat
o błędzie, ale na razie zrobimy to w ten sposób.
Teraz, kiedy to
zrobimy,
ogólnie będzie dobrze, prawda? Jeśli to zapiszę i wrócimy tutaj, otwórz to i kliknę dodaj, zobaczysz, że
nie mogę dodać pustego celu, muszę wprowadzić coś, aby to zniknęło.
Powiedzmy teraz, że w naszym komponencie wejściowym celu, w którym pobieramy dane wejściowe od użytkownika,
przekazujemy je dalej, wzywając do dodawania celu tutaj, zapominamy o tym, przekazujemy tutaj wartość zerową lub nic nie przekazujemy, ponieważ
po prostu zapomnieliśmy dodać to tutaj. Teraz nasza aplikacja uruchamia się dobrze, nie
psuje się od razu, ponieważ nie mamy wyraźnego błędu w kodzie, nie ma błędu składniowego, ale jeśli coś tu wprowadzę i kliknę
przycisk Dodaj, niezdefiniowane nie jest obiektem, ocena długości tytułu
celu i ponownie ten komunikat o błędzie pomaga nam.
Informuje nas, że problem ma coś wspólnego z tym, że coś jest niezdefiniowane i że jest związany z
tym sprawdzaniem długości tytułu celu, a
następnie możesz zanurkować w miejscu, w którym uzyskujesz dostęp do długości tytułu celu i prześledzić problem.
Mamy więc problemy z uzyskaniem długości tytułu bramki, ponieważ wydaje się, że nie jest on zdefiniowany. Dostajemy go tutaj, więc z pewnością nie
ma
błędu, ale przejdźmy do miejsca, w którym na końcu wywoływany jest moduł dodawania
obsługi celu.
Teraz, jeśli pamiętasz, przekazujemy to do propozycji dodawania celu tutaj podczas wprowadzania celu, więc prawdopodobnie
powinniśmy przejść do wprowadzania celu, co przy okazji możesz również wykonać, przytrzymując polecenie
lub kontrolę i klikając nazwę komponentu. Cóż, wzywamy tutaj dodać cel i och, tutaj widzimy, jaki jest błąd. Oczywiście w tym przypadku skonstruowałem ten
błąd tutaj, ale oczywiście rozumiem, że jest to błąd, który
z pewnością mógłbyś mieć w kodzie, w którym zapomniałeś go dodać, w którym możesz
zmienić sposób działania kodu i zapomniałeś dostosować we wszystkich miejscach i dlatego nagle pojawia
się ten błąd.
Teraz komunikat o błędzie pomógł nam znaleźć problem.