首页 > 解决方案 > 传递一个空的道具(没有 api 值)来反应组件

问题描述

我正在将数据从数组传递到反应组件。其中一个值是空的,并且该对象是完全未定义的。我已经尝试过一件事,但在此设置中不起作用....我正在传递personId并传递secondpersonId给我的配置文件组件。如果这个人没有 asecondpersonId它会创建一个未定义的。

<Profile person={{ 
personid: firstperson[0].personId,
secondpersonid: secondperson[0].secondpersonId,
}} />

我已经为 secondpersonId 尝试过这个......

<Profile person={{ 
personid: firstperson[0].personId,
secondpersonid: (secondperson[0].secondpersonId || 'No id'),
}} />

但它仍然抱怨它无法读取未定义的属性。它的数组secondperson[0]不存在。

标签: javascriptarraysreactjsredux

解决方案


您可以像这样使用三元运算符:

<Profile person={{ 
personid: firstperson[0].personId,
secondpersonid: ((secondperson && secondperson[0]) ? secondperson[0].secondpersonId : 'No id'),
}} />

推荐阅读