【发布时间】:2020-11-27 08:25:16
【问题描述】:
export const FetchDailyData = () => {
try {
const [data, setData] = useState({ numbers: [], isFetching: false });
useEffect(() => {
const fetchData = async () => {
setData({ ...data, isFetching: true });
const response = await axios.get(`${apiURL}/daily`);
setData({
...data,
numbers: response.data.slice(0, 50),
isFetching: false
});
};
fetchData();
}, [data]);
console.log(`data= ${data.numbers} isFetching= ${data.isFetching}`);
} catch (error) {
if (error) throw error;
console.log(error);
setData({ ...data, isFetching: false });
}
}
谁能帮我解决这个问题?我试图获取 api 数据,但我无法处理这个错误。
【问题讨论】:
-
为什么要把整个函数体包围在一个 try/catch 中?应该只包装引发错误的最少代码。另外,
FetchDailyData是什么?它不是一个功能组件,它是一个自定义的反应钩子吗?您能否更新问题以包含调用者的代码(即FetchDailyData的使用位置和方式)?
标签: reactjs react-native react-redux react-router react-hooks