所以这行代码抛出了'失败的propType:类型为array
的无效道具object
。
为什么会这样?
这是我的JSON:
"student_records": [
{
"program": "PSCI-210",
"grade": 80
}
]
JSX:
import React, { PropTypes } from 'react';
const StudentRecordPropTypes = {
studentRecordData: PropTypes.object.isRequired,
};
function StudentRecord(props) {
const Records = props.studentRecordData;
return (
<div>
{(Records || []).map(student_records => (
<ul>
<li>{student_records.program} : {student_records.grade} </li>
</ul>
))}
</div>
);
}
StudentRecord.propTypes = StudentRecordPropTypes;
export default StudentRecord;
显示正确。经过一些谷歌搜索,我意识到它寻找一个数组,但它实际上是一个对象。我的问题是我不知道如何解决它。如何删除此错误?
答案 0 :(得分:15)
更改
const StudentRecordPropTypes = {
studentRecordData: PropTypes.object.isRequired,
};
到
const StudentRecordPropTypes = {
studentRecordData: PropTypes.array.isRequired,
};