Когда что-то идёт не так
Ошибаются все, поэтому полезно знать, где о них узнавать. Таких мест два.
Консоль под страницей показывает ошибки, которые случаются во время работы приложения, и предупреждения React. Например, если компонент использует несуществующее имя, консоль покажет:
ReferenceError: Linup is not defined
at App (App.jsx:10)
An error occurred in the <App> component.
Consider adding an error boundary to your tree to customize error handling behavior.
Visit https://react.dev/link/error-boundaries to learn more about error boundaries.Ошибка случилась в компоненте App, в строке 10 файла App.jsx. Сообщение под ней написал React: оно говорит, в каком компоненте произошла ошибка; совет про границы ошибок (error boundaries) пока можно пропустить. Когда компонент ломается так, React не может показать приложение, и страница остаётся пустой.
Предупреждения тоже красные, но приложение продолжает работать: React сообщает, что что-то не так, как, например, с <welcome /> из викторины. Если страница делает не то, что вы ожидаете, загляните в консоль.
Прямо под предпросмотром, над консолью, красное сообщение показывает ошибку в записи кода, например незакрытый тег. Из-за такой ошибки файлы не удаётся превратить в JavaScript, который запускает браузер, и приложение не запускается совсем. В сообщении указано, где находится ошибка:
App.jsx(9,14): JSX element 'p' has no corresponding closing tag.Это строка 9 файла App.jsx, столбец 14 (14-й символ в строке): у p, который начинается там, нет </p>.
Задание
- 1
Нажмите «Запустить». Страница пуста, а в консоли — ошибка. Исправьте ту ошибку, которую она называет, чтобы страница показывала программу под абзацем.
- 2
Теперь сделайте ошибку нарочно. Под заголовком добавьте абзац
Пятница и суббота, сначала без</p>, и нажмите «Запустить»: красное сообщение под предпросмотром назовёт его строку. Затем закройте абзац тегом</p>.