[英]React.js row.map is not a function
我在创建反应表时遇到问题,确实有此代码
render() {
var tableData = [
{name: this.state.users}
];
var tableRow = [];
for(var x = 1; x <= this.state.users.lenght; x++) {
tableRow.push(this.state.users[x]);
if (x % 4 == 0) {
tableData.push(tableRow);
tableRow = [];
}
}
return (
<Table1>
{tableData.map((row, index) => {
return (
<tr key={row + index}>
{row.map((cell, index) => {
return (
<td key={"cell_" + index}>{cell}</td>
);
})}
</tr>
);
})}
</Table1>
在我的tableData
我有一些可以正确检索的firebase数据,但是我将其放置到表单元格时遇到了问题,实际上,使用此表代码时出现错误“ TypeError:row.map不是函数”,我该如何解决? 谢谢 :)
.map
是数组的方法,而tableData[0]
不是数组,而是对象( {name: this.state.users}
)。 目前尚不清楚那里正在做什么,也许您可以删除它? tableData[1]
开始都是数组,应该正确呈现。
首先, tableData
包含第一个值{name: this.state.users}
,它不是数组,因此row.map将失败。
其次,有在一个错字length
for(var x = 1; x <= this.state.users.length; x++) {
.map
仅在数组上可用,在您的情况row
也不是数组(tableData[0] is not array)
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.