【发布时间】:2020-05-18 04:21:55
【问题描述】:
const fetchAPIDataCountries = async () => {
try {
const response = await
axios.get('https://covid19.mathdro.id/api/countries');
const { data } = response
const { countries } = data
const newData = _.map(countries, item => ({ name: item.name }))
console.log("fetchCountries -> newData", countries)
return newData
} catch (error) {
return error;
}
}
useEffect(() => {
const fetchAPI = async () => {
let dataCountries = await fetchAPIDataCountries();
setCountries(dataCountries)`enter code here`;
};
return () => fetchAPI();
}, []);
我没有从 api 获取数据,但我尝试删除 useEffect() 中的 return() 刚刚写了 fetchAPI(),没关系。我不知道这里发生了什么,谁能解释一下。谢谢。
【问题讨论】:
-
您在
useEffect()中定义了一个fetchAPI函数,但实际上并没有在任何地方调用它。不用担心返回 API 调用,在您定义const FetchAPI = ...之后,只需在下一行调用它,fetchAPI()。 -
你写它的方式,你告诉 react 打电话给
fetchAPIcomponentWillUnmount。
标签: reactjs axios react-hooks