0
votes

Ajouter plusieurs éléments JSX / HTML si la condition est vraie

J'utilise une API pour la météo. Dans mon cas, si la température est inférieure à 10 degrés, je souhaite ajouter des éléments HTML. La balise i doit être imprimé 150 fois xxx


0 commentaires

3 Réponses :


1
votes
              render() {
                 return (
                    {items.current.temp_c < 10 && Array.from({length: 150}, (e, i) => i + 1).map((item) => <i key={item}></i>)};
                 )
              }
try to make a array with 150 element then map it

0 commentaires

1
votes

Vous devez utiliser classname code> au lieu de classe code>. En outre, sans enfants, i code> devrait être une étiquette d'auto-fermeture.

render() {
  return (
    items.current.temp_c < 10 
      ? Array.from(Array(150), () => (<i className={'rain'} />));
      : null;
  );
}


0 commentaires

0
votes
render() {
  return (
     current < 10 ? [...new Array(150).keys()].map(i => <i key={i} className="rain"></i>) : <p>NADA</p>
  )
}

1 commentaires

Pour différentes options pour la création rapide de la liste. Donné const addli = (d, i) => , vous pouvez utiliser tableau (150). ) .MAP (addli) ou array.from (tableau (150)). Carte (Addli) ou [... Array (150)]. Carte (addli) . Ajout .Keys () , signifie que vous pouvez remplacer (d, i) => avec i => si la timing est critique, utilisez un pour boucle.