reactjs - 反应表格内的打印 API 数据
问题描述
我正在尝试显示从 API 调用返回的数据。API 返回如下内容:
{"id":,"firm":"","office":"","salesCode":"","account":""}
我有这样的课:
const DataConstructed = items.map((item) =>
<TableRow>
<TableCell>{items.data.f}</TableCell>
<TableCell>{items.data.o}</TableCell>
<TableCell>{items.data.s}</TableCell>
<TableCell>{items.data.a}</TableCell>
</TableRow>
);
render() {
const { classes } = this.props;
const { error, isLoaded, items } = this.state;
if (error) {
return <div>Error: {error.message}</div>;
} else if (!isLoaded) {
return <div>Loading...</div>;
} else {
const DataConstructed = () => {
var data = [];
for(let i=0; i<items.data.length; i++)
{
data.push(
<TableRow>
<TableCell>{items.data[i].f}</TableCell>
<TableCell>{items.data[i].o}</TableCell>
<TableCell>{items.data[i].s}</TableCell>
<TableCell>{items.data[i].a}</TableCell>
</TableRow>
);
}
return data;
}
return (
<Fragment>
<Paper className={classes.Table}>
<Table>
<TableHead className={classes.TableHeader}>
<TableRow>
<TableCell>F</TableCell>
<TableCell>O</TableCell>
<TableCell>S</TableCell>
<TableCell>A</TableCell>
</TableRow>
</TableHead>
<TableBody>
{this.DataConstructed()}
</TableBody>
</Table>
</Paper>
</Fragment>
);
}
}
我收到一条错误消息“TypeError: this.DataConstructed is not a function”,我不明白问题是什么..?
……
解决方案
你不应该在你的渲染方法中定义你的类函数。
在您的情况下,它只是您的渲染方法中定义的常规函数。你仍然可以让它工作。只需从 this.DataConstructed 中删除“this”,因为它不是类函数。
<TableBody>
{DataConstructed()}
</TableBody>
推荐阅读
- javascript - .reduce() 为对象的值创建双引号如何删除它们?
- python - 使用 python xlwings 将范围复制并粘贴为值
- r - 在 R 中使用 str_detect() 检测整个单词
- linux - rsyslog.service 不工作 -> 已弃用
- azure - Azure 函数 CRON 表达式每天无法工作一次
- node.js - error_msg 未在节点 js 、 ejs 中定义
- apache-spark - Spark Window 聚合与 Group By/Join 性能
- symfony - 如何仅选择属性接受为 true 的书籍作为 collectionOperations 中的值通过 Symfony Api 平台获得
- php - PDO 错误:SQLSTATE[HY093]:无效的参数号:绑定变量的数量与标记的数量不匹配
- python - Django如何将请求函数中的值导入函数?