Петля внутри React JSX

Должно быть

~/([^/]*)$~

Средство: сопоставить a /, а затем все, что не является / ([^/]*) до конца ($, «end» - anchor).

Я использую ~ как разделитель, потому что теперь мне не нужно скрывать переднюю косую черту /.

1036
задан ravibagul91 30 May 2019 в 09:51
поделиться

2 ответа

Не уверенный, если это будет работать на Вашу ситуацию, но часто [карту] [1], хороший ответ.

, Если это было Вашим кодом с для цикла:

<tbody>
    for (var i=0; i < objects.length; i++) {
        <ObjectRow obj={objects[i]} key={i}>
    } 
</tbody>

Вы могли записать это как это с функцией карты:

<tbody>
    {objects.map(function(object, i){
        return <ObjectRow obj={object} key={i} />;
    })}
</tbody>

objects.map является лучшим способом сделать, цикл, objects.filter является лучшим способом отфильтровать необходимые данные, и фильтрованные данные сформируют новый массив, objects.some является лучшим способом проверить, удовлетворяет ли массив данное условие (это возвращает булевскую переменную)

3
ответ дан Peter Mortensen 4 November 2019 в 06:20
поделиться
  • 1
    Вы заканчиваются с BOOLs везде, лучше все еще создают интерфейсный объект KVO, который обрабатывает добавление наблюдателя и удаление его. Это может гарантировать, что Ваш наблюдатель только удален однажды. Мы использовали объект точно так же, как это, и он работает. – bandejapaisa 18 January 2012 в 12:36

Существует несколько способов циклично выполнить внутренний JSX

  1. Используя для цикла
function TableBodyForLoop(props) {
  const rows = []; // create an array to store list of tr

  for (let i = 0; i < props.people.length; i++) {
    const person = props.people[i];
    // push the tr to array, the key is important
    rows.push(
      <tr key={person.id}>
        <td>{person.id}</td>
        <td>{person.name}</td>
      </tr>
    );
  }

  // return the rows inside the tbody
  return <tbody>{rows}</tbody>; 
}

  1. Используя метод карты массива ES6
function TableBody(props) {
  return (
    <tbody>
      {props.people.map(person => (
        <tr key={person.id}>
          <td>{person.id}</td>
          <td>{person.name}</td>
        </tr>
      ))}
    </tbody>
  );
}

Полный пример: https://codesandbox.io/s/cocky-meitner-yztif

следующее Реагирует, Документы будут полезны

0
ответ дан 19 December 2019 в 20:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: