@Kipsi

Как в react можно добавлять классы на элементы?

Здравствуйте. Подскажите вот в js можно добавлять классы используя например
const header = document.querySelector(`.header`);
  if (условие) {
      header.classList.add(`active`);
  }

а как в reacte можно делать подобное кроме как через
const box = props => {
  const deff = ['deff']
    if (props.name !== '') {
      deff.push('metal')
    } else {
      deff.push('energ')
    }
 
   return (
     <input
        className={deff.join(' ')}
      />
   )
}

Можно ли в нем тоже использовать classList.add или querySelector например?
  • Вопрос задан
  • 80 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Che603000
c 2011 javascript
Обычно используют https://www.npmjs.com/package/classnames

В Вашем случае:
const classNames = require('classnames');

const box = props => {

  const inputClass = classNames({
        metal:  props.name,
        energ: !props.name
   });

   return  <input className={inputClass} />;
}
Ответ написан
RomReed
@RomReed
JavaScript, React js, ReactNative, Redux, Firebase
return (
     <input
        className={props.name !== ''?'deff  metal':' deff  energ'}
      />
   )
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы