suchen

Heim  >  Fragen und Antworten  >  Hauptteil

So erhalten Sie einen Antwortwert von einer anderen Stelle als der Axios-Funktion in React JS

Ich rufe eine API auf und erhalte die Antwort korrekt, aber außerhalb der Antwortfunktion wird derselbe Antwortwert als leer angezeigt. Ich muss es extern abrufen, wenn die Seite geladen wird. Hier ist der Code:

test.js

import React, { useState, useEffect,useRef, useMemo  } from 'react';
import axios from 'axios';  
function Test() {
    const [state, setState] = useState([]);
    useEffect(() => {
        axios.get(`https://jsonplaceholder.typicode.com/todos/1`)  
      .then(res => {  
        setState(res.data);  
      })  
      console.log(state)
    },
        []);
}
export default Test;
P粉592085423P粉592085423439 Tage vor509

Antworte allen(1)Ich werde antworten

  • P粉852578075

    P粉8525780752023-09-18 00:30:51

    我认为你只需要在useEffect之外的地方安慰这个值,像这样:

    import React, { useState, useEffect,useRef, useMemo  } from 'react';
    import axios from 'axios';  
    function App() {
        const [state, setState] = useState({});
        useEffect(() => {
            axios.get(`https://jsonplaceholder.typicode.com/todos/1`)  
          .then(res => {  
            // console.log(res.data)
            setState(res.data);  
          })  
        },[]);
        console.log(state)
    }
    export default App;

    Antwort
    0
  • StornierenAntwort