【发布时间】:2018-12-06 11:05:32
【问题描述】:
我正在尝试使用 ReactJS 呈现表格,但收到错误 - 无法读取未定义的属性 'map' -
代码:
import React, { Component } from 'react';
import './Table.css'
const obj = [{
name: "onion",
price: ".99",
id: 1
}, {
name: "pepper",
price: "1.25",
id: 2
}, {
name: "broccoli",
price: "3.00",
id: 3
}];
class TableRow extends React.Component {
render() {
const {
data
} = this.props;
const row = data.map((data) =>
<tr>
<td key={data.name}>{data.name}</td>
<td key={data.id}>{data.id}</td>
<td key={data.price}>{data.price}</td>
</tr>
);
return (
<span>{row}</span>
);
}
}
class Table extends Component {
constructor(props) {
super(props)
}
render() {
return (
<table>
<TableRow data={this.props.data} />
</table>
);
}
}
export default Table;
我将表格组件导入到 App.js 文件中。但是,错误发生在 Table.js 的以下行: const row = data.map((data) => ......我可以得到一些帮助吗?
【问题讨论】:
-
能否也分享一下 App.js,以便我们查看您作为道具传递给
组件的数据类型?
-
您的
data似乎是undefined。您确定您在渲染时获取数据吗? -
你在哪里给
Table它的data道具?那是data一个数组吗?顺便说一句,data.map((data) => ---)是错误的,不能在同一个作用域内定义 2 个同名变量 -
const obj = ...和data一样吗?
标签: javascript reactjs