Каждый тег закрыт
В HTML у некоторых элементов нет закрывающего тега, например у <img>, <br> и <input>. В JSX закрыт должен быть каждый элемент. Элемент с содержимым получает закрывающий тег, как в HTML, а элемент без содержимого может закрыть сам себя косой чертой перед >:
<img src="/react.svg" alt="Логотип" />
<br />
<input placeholder="Ваш email" />Косую черту вы уже видели в <Welcome />. Без неё JSX не знает, где элемент заканчивается. Приложение не запускается, а красное сообщение под предпросмотром говорит, например:
App.jsx(4,14): JSX element 'img' has no corresponding closing tag.То же относится к элементам с содержимым: <p> без </p>, который браузеры прощают в HTML, в JSX — ошибка.
У фестиваля пока нет логотипа, поэтому в этом упражнении он одалживает логотип React, который лежит на нашем сайте по адресу /react.svg.
Задание
- 1
Над заголовком добавьте логотип: изображение
imgсsrc="/react.svg"иalt="Логотип". - 2
В коде первый абзац занимает две строки, но на странице они сливаются в одну, потому что JSX, как и HTML, превращает перевод строки в тексте в пробел. Поставьте после
Пятница и субботаперенос строкиbr, чтобы вторая строка отображалась отдельно. - 3
Между вторым абзацем и кнопкой добавьте текстовое поле
inputсplaceholder="Ваш email".