-1
votes

ReactJS HOC DUDES (composant d'ordre élevé)

Créer un composant d'ordre supérieur pour pouvoir effectuer un chargeur. Je m'explique moi-même, j'ai un composant qui accomplit une API JSON, mais je le souhaite pendant que je charge et que les cartes n'apparaissent pas, c'est un message qui dit que le chargement ...

J'ai déjà cette validation dans Le composant de la carte, mais je veux que ce soit dynamique et de pouvoir répéter cette logique dans les cartes d'utilisateur aussi p>

Code de composant ci-joint et sa validation forte> P>

TypeError: Cannot read property 'length' of undefined
whithLoader.render
src/Components/HOC/whitLoeader.js:10
   7 |         }
   8 |         render() {
   9 |             
> 10 |             return this.props.courses.length === 0 ? <h1>Loading...</h1> : <WrappedComponent {...this.props} />
  11 |         }
  12 |     }
  13 | }


1 commentaires

Ce n'est pas ce que vous utiliseriez des composants d'ordre supérieur pour. Quel que soit le piratage que vous mettez en place pour que ce travail ne vaut pas la peine. Pourquoi ne pas simplement placer le composant loader à l'intérieur du composant qui rend votre jsx avec cours - axios_cards ?. Vous essayez de créer une mauvaise abstraction ici et je resterais loin de cela.


3 Réponses :


0
votes

Au lieu de créer un hoc, utilisez le chargeur comme enfant du composant, puis lors du chargement, rendant le composant de chargement, et lorsque c'est fait, rendez le code normal. Beaucoup plus facile à mettre en œuvre et pas besoin d'un hoc


0 commentaires

1
votes

Vous pouvez le faire xxx

et composant reçoit une séance de réglage comme Prop , et simplement l'ajouter à: xxx


1 commentaires

Votre solution est incomplète.



0
votes

Ce n'est pas le but de HOC, il suffit d'ajouter un drapeau "chargement" ou "récupération" à l'état xxx


0 commentaires