@Smuzzzzzi

Как if else react?

Есть div по умолчанию
<div className="vote">
Нужно если значение больше 0 присваивать класс positive
<div className="vote positive">
Если значение меньше 0
<div className="vote negative">
Делаю так, но но если значение меньше 0 все равно стоит positive
<div className={"vote" + (article.total_comments.length > 0 ? '' : " positive")  + (article.total_comments.length < 0 ? '' : "negative")}>
  • Вопрос задан
  • 129 просмотров
Решения вопроса 1
0xD34F
@0xD34F
Перечитайте внимательно, что вы там у себя понаписали - если значение больше нуля, то пустая строка, иначе 'positive'. Вам вроде бы наоборот надо. То же самое и со вторым условием.

А вообще, можно и попроще, без условий:

['negative', '', 'positive'][Math.sign(article.total_comments.length) + 1]
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
askhat
@askhat
SDE @ Akvelon
<div className={`vote ${article.total_comments.length ? 'positive' : 'negative' }`}>
Ответ написан
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы
Ultimate Guitar Калининград
от 1 000 до 5 000 usd.
Spar-online Нижний Новгород
от 150 000 до 170 000 руб.
Enapter Санкт-Петербург
от 160 001 руб.