Предложение If в функции отображения JSX

#reactjs #jsx

#реагирует на #jsx

Вопрос:

Поэтому у меня есть этот код для создания нескольких выпадающих списков.

 lt;divgt;  {['Mischung', 'Menge'].map((key) =gt; (  lt;select key={key}gt;  {mischung.map(({ [key]: value }) =gt; (  lt;option key={value}gt;{value}lt;/optiongt;  ))}  lt;/selectgt;  ))} lt;/divgt;  

Каждый выпадающий список генерируется, но с пустыми значениями.

введите описание изображения здесь

введите описание изображения здесь

Как вы можете видеть, в другом раскрывающемся списке есть пустые значения.

Как я могу проверить значение на null или если оно не пустое.

Комментарии:

1. Что такое mischung ? и ({ [key]: value }) кажется неправильным. Можете ли вы поделиться рабочим фрагментом (codesandbox, stackblitz), чтобы мы могли поиграть с ним? Кроме того, вы можете запустить filter его раньше map , чтобы получить подмножество всего массива.

Ответ №1:

 lt;divgt;  {['Mischung', 'Menge'].map((key) =gt; (  lt;select key={key}gt;  {mischung.map(({ [key]: value }) =gt; {  if (value) {  return (  lt;option key={value}gt;{value}lt;/optiongt;  )}  }  )}  lt;/selectgt;  ))} lt;/divgt;