我遇到了一些奇怪的錯誤。剛從打字稿開始。當我第一次撰寫 console.log(data) 時,我得到一個里面有物件的陣列。當我重新加載網頁而不碰任何東西時,就會出現問題。我的控制臺日志回傳未定義。
const Home = (): JSX.Element => {
const [data, setData] = useState<any>();
const [loading, setLoading] = useState<boolean>(true);
const fetchApi = () => {
fetch("https://fakestoreapi.com/products")
.then((res) => {
return res.json();
})
.then((data) => setData(data));
console.log(data)
};
useEffect(() => {
fetchApi();
setLoading(false);
}, []);
return(
<div>
</div>
)
};
回傳第一個 console.log

重新加載后

uj5u.com熱心網友回復:
你需要在 "then" 中進行 console.log
.then((data) => {
setData(data));
console.log(data)
})
如果你 console.log setData 下的資料狀態,它將顯示未定義,你可以在 fetchApi() 之后的 useEffect 中使用 console.log(data) 狀態
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/472030.html
標籤:javascript 反应 打字稿
