0
votes

paramètre passe à useeffect ()

Je veux obtenir un identifiant de l'article rendu actuel (dans mon sujet). Je tente de le faire via UseEffect () Crochet, mais il semble qu'il ne puisse pas accepter les paramattres. Y a-t-il un moyen de le réparer et de passer des données reçues à d'autres éléments?

Voici le composant fonctionnel complet de la mine: xxx


8 commentaires

Vous pouvez obtenir cet identifiant de la composante actuelle s'il en a une. Pouvez-vous nous montrer le composant où vous utilisez useeffect?


Oui je vais mettre à jour le post


Je l'ai mis à jour !!


Merci. Mais il n'y a pas d'identité identique ou passée là-bas, où l'obtiendriez-vous?


Je rends ce composant à partir d'un autre composant après un clic sur le titre et je veux que ID génère après que ce composant soit rendu.


Je pensais que useeffect ferait la chose


Vous devriez Lisez les docs sur UseEffect . Mais dans tous les cas, personne ne va générer l'identifiant pour vous, vous devez l'obtenir de quelque part ou de vous générer, puis de le transmettre aux composants qui en ont besoin.


Donc, dans mon cas, je vais le transmettre d'un autre composant comme des accessoires


3 Réponses :


1
votes

USEEFFET code> Hook ne prend pas de paramètre. Vous devez transmettre le paramètre dans le composant.

const Component = ({ id }) => {

    useEffect(() => {
        axios
            .get(`http://localhost:4000/getTopic/${id}`)
            .then((post) => {
                console.log('--------post.data', post.data.description);
            })
            .catch((err) => {
                console.log('--------err', err);
            })
    })

    return (
         // your render
          )
}


5 commentaires

Puis-je passer des accessoires d'un autre composant?


En composant fonctionnel


Oui. Vous devez transmettre l'ID de composant parent comme celui-ci


J'ai essayé de le faire d'un autre composant fonctionnel, mais ça me laisse le faire


Pourriez-vous s'il vous plaît partager votre composant parent dans lequel vous utilisez postonpage composant.



3
votes

UseEffect Crochet est utilisé pour exécuter des fonctionnalités conformément au changement de données / surcharge. Il ne peut pas recevoir de paramètres, Si vous souhaitez utiliser l'ID de votre rendu actuel dans votre useeffect, vous devez l'envoyer en tant que accessoire


0 commentaires

1
votes

Si vous stockez ID en état d'état, vous pouvez déclencher l'utilisation de l'utilisateur si ID est modifié. Dans un exemple ci-dessous, j'ai stocké ID dans l'état et nous l'informer dans la deuxième fonction d'utilisation. Vous devez également ajouter des paramètres de changement d'useeffect xxx


0 commentaires