Условный стиль в соответствии со значениями в Props.Children - PullRequest
0 голосов
/ 12 июня 2019

У меня div с props.children. Это div имеет className = "tags". Если от родителя не переданы значения, я хочу добавить еще одно имя класса dnone к div. Как условно добавить класс к этому div, если значение не передано?

Ответы [ 2 ]

0 голосов
/ 12 июня 2019

Вы можете решить это с помощью простого троичного оператора :

  <div className={this.props.children ? 'tags' : ''}> ... </div>
0 голосов
/ 12 июня 2019

Этого можно добиться с помощью пакета classnames.

import classNames from 'classnames'
...

const cls = classNames({tags: true, dnone: !props.children })

<div className={cls}> ... </div>

Как это работает: тег класса будет присутствовать всегда, а класс dnone будетприсутствует только при отсутствии детей.

Простыми словами:

classNames({
  classA: true,
  classB: true,
  classC: false // this class is going to be excluded
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...