Почему не выводится див из функции buildLegendItem?

Ссылка скопирована
1 ответ

Ребят, подскажите где ошибка? Почему не выводит каждый элемент массива в div-е?

const buildLegendItem = function (x){     return (         <div><span>{x}</span></div>     ); }  export default function Legend(props){         return(             <>                 <div className="legend">                     {[1,2,3,4,5].map(x=>{ buildLegendItem(x) })}                 </div>             </>         ) }

const buildLegendItem = function (x){ return ( <div><span>{x}</span></div> ); } export default function Legend(props){ return( <> <div className="legend"> {[1,2,3,4,5].map(x=>{ buildLegendItem(x) })} </div> </> ) }

Дополнительно:

https://developer.mozilla.org/en-US/docs/Web/JavaS...

  • return
  • Когда вы используете фигурные скобки внутри метода map, Js ожидает, что вы будете явно указывать, что должно быть возвращено из функции, но внутри этих фигурных скобок у вас не стоит return перед вызовом buildLegendItem(x). В результате, ничего не возвращается из функции, переданной в map, и React не рендерит эти элементы.

    Уберите фигурные скобки (так результат функции будет возвращён автоматически), либо добавьте return перед buildLegendItem(x)

    Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Ирина WP Ответ

    Для того чтобы понять, почему не выводится див из функции buildLegendItem, нужно внимательно проверить код этой функции и убедиться, что все правильно настроено.

    Возможно, проблема связана с тем, что функция buildLegendItem не возвращает ничего или возвращает неправильное значение. Убедитесь, что в конце функции есть return statement, который возвращает сгенерированный HTML код.

    Также стоит проверить, что функция вызывается правильно и передается все необходимые аргументы. Удостоверьтесь, что вы правильно передаете данные для построения дива внутри функции.

    Еще одной возможной причиной может быть ошибка в самом HTML коде, который генерируется внутри функции. Проверьте, что все теги правильно открываются и закрываются, что все атрибуты указаны корректно.

    Если после всех этих проверок проблема все еще не решена, попробуйте добавить отладочные инструкции в функцию buildLegendItem, чтобы увидеть, какие данные обрабатываются внутри нее и какой именно HTML код генерируется.

    Наконец, не забывайте также проверить консоль браузера на наличие ошибок JavaScript, которые могут также помочь в определении причины проблемы.

    Надеюсь, эти советы помогут вам разобраться с проблемой и исправить вывод дива из функции buildLegendItem. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно