вот код:
render() {
console.log(this.state.catalog.products);
if (this.state.catalog.products) {
return (
this.state.catalog.products.map((item) =>
<div>
{item.description}
</div>
)
);
} else {
return (
<div>Загрузка...</div>
);
}
}
его вывод выводит ошибку такого рода:
A valid React element (or null) must be returned. You may have returned undefined, an array or some other invalid object.
Массив, который я пытаюсь вывести:
React не умеет выводить массивы без контейнера (во всяком случае пока). return
должен возвращать один(!) DOM Элемент или null
. Вы же возвращаете несколько DOM элементов. Вам необходимо обернуть вывод в какой-нибудь контейнер, например div
или span
. Или даже сократить код таким образом:
render() {
return this.state.catalog.products
? (
<div>{this.state.catalog.products.map((item) =>
<div>
{item.description}
</div>
)}</div>
)
: <div>Загрузка...</div>;
}
Еще вариант
render() {
return <div>{
this.state.catalog.products
? this.state.catalog.products.map((item) =>
<div>
{item.description}
</div>
)
: 'Загрузка...'
}</div>;
}
Оберните вот это вот
this.state.catalog.products.map((item) =>
<div>
{item.description}
</div>
в теги <див> и <закр.див>
Виртуальный выделенный сервер (VDS) становится отличным выбором
Доброго времени суток, прошу, помогите решить проблему, у меня есть скрипт, который берет данные из этих инпутов:
Есть главная страница и несколько внутреннихНа главной странице есть прелоадер, который корректно отображается
ГосподаУ меня такая конструкция на странице: два вложденных div'а:
Нужно выводить сгруппированную по координатам информацию в таблице (или лучше heatmap из highcharts) на картуТо есть, у меня есть table или div с определённой...