convert = (item) => {
let result;
for (let value in item) {
result += <span>{item[value]}</span>
}
return result;
}
render() {
return (
<div style={style}>
{
this.convert(this.props.data)
}
</div>
);
}
Свойство this.props.data
содержит объект. Необходимо все его свойства обернуть в тэг span
и возвратить полученный результат. Но в итоге result возвращает:
Используйте для этого лучше map.
Object.keys(item).map(key => <span>item[key]</span>);
Все же jsx это объекты, а не строки. Важно в общем это все собрать в массив и вывести. Можете поступить так.
convert = (item) => {
let result = [];
for (let value in item) {
result.push(<span>{item[value]}</span>);
}
return result;
}
render() {
return (
<div style={style}>
{
this.convert(this.props.data)
}
</div>
);
}
Или так
convert = (item) => {
return Object.keys(item).map(key => <span>item[key]</span>);
}
render() {
return (
<div style={style}>
{
this.convert(this.props.data)
}
</div>
);
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
При загрузке больших файлов (4+ Gb),файлы открываются через стандартную функцию
Использую плагин easyzoomjs для изображений, но требуется он только для ПК, а для моб
Есть скрипт, который при наведении на элемент меню должен менять класс у блока с подкатегориями