javascript - 使用 Axios 并使用 React-table 创建表时,data.forEach 不是函数
问题描述
我正在使用 react-table 库和 axios 从 api 进行 get 调用。我的使用效果是这样的。
const [data, setData] = useState([]);
useEffect(() => {
(async () => {
const result = await axios("http://site");
setData(result.data)
})();
}, []);
return (
<div className="App">
<Table columns={columns} data={data} />
</div>
);
但是,在尝试渲染表格时出现错误。我得到的错误似乎来自我的 Table.js 文件
错误:表格
src/Table.js:8
5 |
6 | const [filterInput, setFilterInput] = useState("");
7 | // Use the state and functions returned from useTable to build your UI
> 8 | const {
| ^ 9 | getTableProps,
10 | getTableBodyProps,
11 | headerGroups,
我是使用 react-table 的新手,有什么想法吗?我做了 console.log 结果,它作为一个对象进来。
解决方案
您需要某种“加载”组件,该组件将呈现直到您的 axios 完成并且您有数据要呈现。你可以像这样使用它:
return !data.length ? (<div>Loading..</div>) : (<div className="App">
<Table columns={columns} data={data} />
</div>)
推荐阅读
- reactjs - redux 状态变化时如何导航?
- java - WifiInfo getSSID 在断开连接时返回最后一个 SSID
- angular7 - 有条件地以角度更改 owl-date-time 选择器的日期格式
- css - 文本溢出省略号
不起作用 --> Shadow-Dom-Element 不占用父宽度 - android - 如何修复:Flutter 中的物理设备上不显示图像背景
- php - 我如何在 Symfony 中设置 API-Platform 的配置以加载我的 resources.xml
- google-sheets - 重复 N1:Nx 行 Y1:Yx 次?
- python - Tensorflow 数据集 API 是否完全摆脱了 feed_dict 参数?
- asp.net-core - 优化 API 的响应时间,涉及 SQL Server
- python - 如何在 Kivy 中编译带有文件夹的 APK?