Задать вопрос
@ironmansl

Почему так пишут код?

Есть код меняющий классы (добавляет или удаляет):
https://jsfiddle.net/rjhzf0wk/

там есть вот такая строка:
<div className={(this.state.opened) ? "mystyle" : ""}>Текст</div>


И я подумал а почему бы не написать вот так:
<div className="mystyle">{this.state.opened}Текст</div>

а в css написать display:none для mystyle.
Но так не работает.

Часто вижу что в React коде пишут значением атрибута className не название класса а в значение className пишут какое-то условие. Почему именно так пишут? Что это за фишка такая писать не название класса а условие?
  • Вопрос задан
  • 133 просмотра
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Frontend-разработка на React
    10 недель
    Далее
  • ProductStar
    Разработка на React
    6 недель
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
Решения вопроса 1
telnov_magic
@telnov_magic
Между небом и омутом, между серпом и молотом
Потому что первый кусок кода проверяет, какое значение хранится в стейте, и если значение true, устанавливает класс mystyle. А твой код создает блок с классом mystyle, и вписывает в него текст
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
ITK academy Екатеринбург
от 50 000 до 90 000 ₽
от 250 000 до 300 000 ₽