为什么我收到TypeError:无法在React应用程序中读取属性?

时间:2018-11-21 17:53:53

标签: javascript reactjs

我有数组:

  • 运动员(例如:[{{id:1,姓氏:“ Williams”,typeSport:5},...])
  • 体育(例如:[{id:4,name:'football'},...])

我使用地图功能将每个运动员从Main组件发送到ListRow组件:

IQueryable<T>

在ListRow组件中,我打印有关每个运动员的所有数据,但id值typeSport我更改为运动名。 我的实现正在工作,但是控制台出现错误。

{this.props.sportsmen.map(item => {
    return (<ListRow key={item.id} directory={item}/>);
})} 

错误:

  

未捕获(承诺)TypeError:无法读取属性   未定义的“名称”

为什么会出现此错误以及如何删除错误?

1 个答案:

答案 0 :(得分:0)

sports数组不包含ID与this.props.directory.typeSport匹配的运动。一种解决方案是修改返回的内容,以处理不存在这项运动的情况。

return tmpSport ? tmpSort.name : 'not found'

或类似的东西