原始问题:
请用React的自定义hook实现一个可以 从服务器加载任何数据资源的函数
自定义hook实现一个可以从服务器加载任何数据资源的函数,可以如下:
import { useState, useEffect } from 'react';
const useDataFetching = (url) => {
const [data, setData] = useState(null);
// 执行异步请求数据并将其存储在state中
const fetchData = async () => {
try {
const response = await fetch(url); // 发送请求并获得响应
if (!response.ok) throw new Error(response.statusText); // 检测是否成功
const jsonData = await response.json(); // 解析JSON格式的响应
setData(jsonData); // 存储JSON格式的响应数据到state中
} catch (err) { console.log(err); } // 打印错误信息
};
useEffect(() => { fetchData(); }, [url]); // 组件挂载时发送请求
Prev:生物多样性的保护措施包括哪些