Как отобразить массивы массивов в JSX - PullRequest
1 голос
/ 01 апреля 2020

У меня есть список имен в виде массива. Эти имена затем объединяются в массив в моем приложении. js

Я ищу их на карте, чтобы создать <ul> containing <li> s, и я застрял, любая помощь будет удивительной, спасибо !

К сожалению, регулярное отображение массива, как это, не будет работать ... Спасибо, так!

return (
    <ul>
      {pairs.map(pair => (
        <li key={pair}>{pair}</li>
      ))}
    </ul>
  );

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>


createPairs() {
    const list = [...this.state.list];

    list.sort(() => 0.5 - Math.random());

    const pairs = [];


    while (list.length >= 2) {
      const pair = [list.pop(), list.pop()];

      pairs.push(pair);
    }

    this.setState({
      pairs
    });
  }

1 Ответ

2 голосов
/ 01 апреля 2020

Вы можете использовать деструктурирование в своих аргументах map для извлечения компонентов каждой пары. Не забудьте заключить деструктурированные аргументы в скобки.

return (
  <ul>
    {pairs.map(([pair_1, pair_2]) => (
      <li key={pair_1}>{pair_1}</li>
    ))}
  </ul>
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...