Реагировать «или` условие в имени класса», если` оператор

#css #reactjs #conditional-operator

Вопрос:

У меня есть приложение React, и я хочу изменить класс CSS, когда выполняется то или иное условие. Как мне это сделать?

Итак, если validation или validationNoExist есть false , то класс CSS должен быть input-form-validation-wrong , если оба верны, то выбирается первый класс.

Вот мой код:

 <input type="email"  className={validation || validationNoExist ? 'input-form' : 'input-form-validation-wrong'} placeholder="E-Mail" />
 

Ответ №1:

Это может быть просто проблемой группировки логического оператора, чтобы они оценивались как единица для проверки условий для троичного. Они оба должны быть истинными, чтобы троичный возвращал «форму ввода».

 <input
  type="email"
  className={(validation amp;amp; validationNoExist) ? 'input-form' : 'input-form-validation-wrong'}
  placeholder="E-Mail"
/>
 
 console.log((false amp;amp; false) ? 'input-form' : 'input-form-validation-wrong');
console.log((true amp;amp; false) ? 'input-form' : 'input-form-validation-wrong');
console.log((false amp;amp; true) ? 'input-form' : 'input-form-validation-wrong');
console.log((true amp;amp; true) ? 'input-form' : 'input-form-validation-wrong'); 

Ответ №2:

 <input type="email"  className={(validation || validationNoExist) ? 'input-form' : 'input-form-validation-wrong'} placeholder="E-Mail" />