recherche

Maison  >  Questions et réponses  >  le corps du texte

Uncaught TypeError : Impossible de lire la propriété non définie (lire 'img1') dans la promesse

<p>J'utilise réagir.js</p> <pre class="brush:php;toolbar:false;">fonction async Bannières (accessoires) { const réponse = attendre axios.get(`${apiUrl}/assets/get`); retour ( <Contenu principal texte={réponse.text} img1={props.img1 ? props.img1 : réponse.data.img1} img2={props.img2 ? props.img2 : réponse.data.img2} /> ); }</pré> <p>L'erreur ne se produira que lorsque "async" est présent</p>
P粉265724930P粉265724930461 Il y a quelques jours567

répondre à tous(1)je répondrai

  • P粉207969787

    P粉2079697872023-08-26 14:12:53

    Vous devez envelopper l'appel API asynchrone dans useEffect Hook et stocker les données dans l'état afin de pouvoir utiliser cet état dans la fonction de rendu. Voici un exemple de code sans tests :

    function Banners(props) {
      const [response, setResponse] = useState([]);
    
      const fetchData = async () => {
        const response = await axios.get(`${apiUrl}/assets/get`);
        setResponse(response);
      };
    
      useEffect(() => {
        fetchData();
      }, []);
    
      return (
        <MainContent
          text={response.text}
          img1={props.img1 ? props.img1 : response.data.img1}
          img2={props.img2 ? props.img2 : response.data.img2}
        />
      );
    }

    répondre
    0
  • Annulerrépondre