reactjs - 简单的 React JS REST 获取包装器
问题描述
我想构建一个通用的获取数据-> 显示加载/错误,这样我就可以构建一个页面,其中大部分只定义两个组件。
IE:我主要是反复定义 DogRenderer 和 DogComponent。
我的方法在这里理智吗?
const MyGetComponent = ({url, Render, children}) => {
const { data, loading, error } = useGet({
path: url
});
if (loading) return <h1>Loading..Vy.</h1>;
if (error) return <h1>Error..Vy.</h1>;
return <Render data={data} children={children} />;
};
const DogRenderer = (props) => {
return (
<>
<img alt="Alt thingo" src={props.data.message} />
{props.children}
</>
);
};
const DogComponent = (props) => {
console.log(props);
return (
<MyGetComponent
url="https://dog.ceo/api/breeds/image/random"
Render={DogRenderer}
children={props.children}
/>
);
};
const page = () => {
return <DogComponent/>;
}
export default page;
解决方案
推荐阅读
- c# - WPF将值从动态图像发送到代码后面?
- drush - SQLSTATE[HY000] [2002] Drush 命令不起作用 - DDEV vanilla Drupal 8 安装
- linux - Linux:搜索旧文件......将最旧的文件复制到某个位置......(+-验证副本)......然后删除它们
- excel - 如何修复“StringConverter 无法从 System.Double 转换。” 在 In\\UiPath
- php - 从多维数组中获取一个键返回零
- php - 使用 php 在网站中输出整个 oracle DB 表并保存为 CSV
- python - BeautifulSoup:从元素中提取属性?
- button - JavaFX - 从图标创建按钮
- android - 如何使用 Branch.io 链接打开 Facebook 页面
- angular - 在 Angular 2 中作为方法传递的事件侦听器回调中未定义对象