React Native 对象子映射在父映射中

Posted

技术标签:

【中文标题】React Native 对象子映射在父映射中【英文标题】:React Native object child mapping inside parent map 【发布时间】:2019-03-10 19:05:03 【问题描述】:

是否可以从父映射映射子对象?

我有这样的数据:

[
 
  "hdr_name": "A",
  "detail": [
    
      "dtl_name": "Aaron Bennet"
    ,
    
      "dtl_name": "Ali Connors"
    
  ]
 ,
 
  "hdr_name": "B",
  "detail": [
    
      "dtl_name": "Bradley Horowitz"
    ,
    
      "dtl_name": "Brian Sweetland"
    ,
  ]
 
]

我想显示标题名称和详细名称,我使用 map 获得了标题名称

this.props.selcheckSheet.data.map((item, index) => 
  return (
     <ListItem itemDivider key=index >
      <Body>
       <Text>item.hdr_name</Text>
      </Body>                          
     </ListItem>

     //How to loop detail in item.detail?

)

那么,如何获取 item.detail 并渲染到 ListItem? 我想渲染这样的视图:

【问题讨论】:

我觉得SectionList对你比较有用,如果你有大量数据我不建议使用map 【参考方案1】:

是的,当然,与您已经完成父级的方式非常相似:

this.props.selcheckSheet.data.map((item, index) => 
  return (
     <ListItem itemDivider key=index >
      <Body>
       <Text>item.hdr_name</Text>
      </Body>                          
     </ListItem>

     item.detail.map((u,i) => 
        <ListItem itemDivider key='' + index + i >
          <Body>
            <Text>u.dtl_name</Text>
          </Body>                          
        </ListItem>
     )

))

【讨论】:

@AnandaBayuPutraYudhistira 是的,最后多了一个括号,我更新了答案 我在第一个 ListItem 和 childloop 之间使用 ,现在可以使用了,谢谢。

以上是关于React Native 对象子映射在父映射中的主要内容,如果未能解决你的问题,请参考以下文章

如何映射一组对象,删除一个并将我的状态设置为 react-native 中的新数组?

如何在 React Native 中的单个 svg 对象上映射 onPress 事件?

尝试在 React 中映射子对象时出现未定义错误

尝试在反应中映射数据时出现错误。对象作为 React 子对象无效(找到:带有键 children 的对象),我该如何解决?

React Native - 直接在父组件上设置子组件的状态

react-native & firebase:请求在映射页面中的条件