1 回答

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超7個(gè)贊
在第一個(gè).then()中fetch,當(dāng)您嘗試使用該方法從響應(yīng)中提取 JSON 內(nèi)容時(shí)json(),您應(yīng)該使用該.text()方法,因?yàn)槟鷱姆?wù)器返回一個(gè)簡單的字符串,而不是 JSON 對象。返回此文本后,您可以更新第二個(gè)中的狀態(tài).then()。
不要忘記在您的 中包含依賴項(xiàng)數(shù)組useEffect,因?yàn)槿绻麤]有它,您將始終在運(yùn)行后觸發(fā)另一個(gè)渲染。如果添加一個(gè)空數(shù)組作為依賴項(xiàng),它將僅在頁面加載時(shí)獲取。
function App() {
const [data, newData] = useState(null);
useEffect(() => {
fetch(URL)
.then((response) => response.text())
.then((response) => newData(response));
}, []);
return <div>{data ? data : 'No data yet...'}</div>;
}
添加回答
舉報(bào)