首页 > 解决方案 > 无法在反应中改变状态

问题描述

我是一个初学者,无法弄清楚为什么我的 setData 函数没有改变我的数据变量的状态,即使在我 setData 到对象之后它仍然是一个空数组,下面是代码

   const [isLoading, setIsLoading] = useState(true);
   const [data, setData] = useState([]);
 
   const books = async () => {
     try {
       const response = await fetch(
         " https://openlibrary.org/books/OL7353617M.json"
       );
       const heaven = await response.json();
       setData(heaven);
       setIsLoading(false);
 
       console.log(heaven);
       console.log(data);//**[]**
     } catch (err) {}
   };
   React.useEffect(() => {
     books();
   }, []);
   if (isLoading) {
     return <h2>isLoading...</h2>;
   }
   // const {};
 
   return (
     <section>
       <h2>Loaded</h2>
     </section>
   );
 }
 
 export default App;```


what am i missing? please someone help

标签: reactjsstateuse-state

解决方案


推荐阅读