2016-08-02 9 views
1

В React v15 элементы массивов в JSX теперь отображаются как <!--react-text:some_id-->text<!--/react-text--> вместо пролетов. Я посмотрел, но я не могу понять, как применять стили CSS к этим элементам. Возможно ли это, или мне нужно сопоставить массив для генерации пробелов вручную и применить CSS к промежуткам?Как применить CSS к массивам, созданным React in v15?

например.

this.props.items.map((item,i) => { return <span>{item}</span>})

+2

Вы уверены, что добавление CSS в пролетах является хорошей идеей в первую очередь? почему бы не добавить имя класса в любой элемент, который вы хотите на карте? – azium

+0

Если вы игнорируете комментарии '', это просто текст, не так ли? Представьте себе, что React не существует, как применить CSS к этому тексту? Помещая класс в содержащийся элемент. Если это невозможно, да, просто оберните их в промежутки. –

+0

Это похоже на хорошее предложение, но также было просто любопытно, как или если вы можете применить css к тексту, который теперь отображается таким образом. @DavidGilbertson: Я пробовал это, не работает в моем случае. Хотя у меня есть обходное решение. –

ответ

0

Я считаю, что лучшим ответом является сочетание использования функции карты специально для визуализации элементов, как любой тип HTML элемента, который вы предпочитаете (то есть пролеты, дивы и т.д.) и с помощью предложения @ azium по используя пользовательское имя класса для элемента, если это необходимо.

т.е.

var customSpans = this.props.items.map( item => <span className='someCssClass'>{item}</span> );