你这里有问题
if (!this.props.pageContent.pageSection[0].card)
代替
if(!this.props.pageContent.pageSection[0].card)
具有
if(this.props.pageContent && this.props.pageContent.pageSection && this.props.pageContent.pageSection[0].card)
因为你不确定你的道具
pageContent
你也不确定
pageSection
存在,因为在设置道具之前
页面内容
是
undefined
您试图访问其中的一个对象,然后在数组中查找元素
请尝试以下更新的代码:
class Page extends Component {
componentWillMount() {
this.props.fetchPageContent();
}
render() {
console.log(this.props.pageContent)
if(this.props.pageContent && this.props.pageContent.pageSection && this.props.pageContent.pageSection[0].card)
{
return (
<div>
<PageSection
introSectionCardTitle={ this.props.pageContent.pageSection[0].card.cardTitle}
introSectionCardContent={ this.props.pageContent.pageSection[0].card.cardContent}
/>
</div>
);
}
else
{
return (<div></div>);
}
}