【发布时间】:2020-06-04 12:54:21
【问题描述】:
我是 RN 的新手,最近开始使用 redux。我有一个以下格式的 api 响应:
{
records : [
{
name : "cde"
groups :[
{
id : "212"
fields[{
data : "abc"
}]
}]
}
]
}
因此,在记录内部,我有一个对象数组“组”,在“组”内部,我有对象数组“字段”,在字段内部,我有要在 FlatList 中显示的数据。到目前为止,我能够显示 FlatList 内记录中的“名称”。 我的文件 PeopleList.js 如下所示:
export default class PeopleList extends Component {
_keyExtractor = item => name;
_renderItem = ({ item }) => {
const { name} = item;
const groups = this.props.people.map((items, index)=>{
return( <Text>{name}({items.id})</Text>)
})
//const {} = item.groups;
return (
<View>
<View style={styles.cardContainerStyle}>
<View style={{ paddingRight: 5 }}>
<Text style={styles.cardTextStyle}>
{/* {name} {"\n"} */}
{groups}
</Text>
</View>
<Image
style={styles.faceImageStyle}
// source={{ uri: picture.medium }}
/>
</View>
</View>
);
};
render() {
return (
<FlatList
style={{ flex: 1 }}
data={this.props.people}
keyExtractor={this._keyExtractor}
renderItem={this._renderItem}
showsVerticalScrollIndicator={false}
showsHorizontalScrollIndicator={false}
/>
);
}
}
PeopleList.propTypes = {
people: PropTypes.array
};
people 是一个包含记录对象的数组:responseJson.records 那么,如何显示数据以及 keyextractor 的用途是什么?
根据我目前搜索的内容,我们需要对数组使用 map 函数,但不太清楚如何在这里使用它
编辑:我已经修改了我的代码并使用了 map func,现在我得到的输出是:
name1 groupid1 groupid2 ... so on
name2 groupid1 groupid2 ... so on
.
.
. and so on
随心所欲:
name1 groupid1
name2 groupid2
.
.
.
【问题讨论】:
标签: react-native redux react-native-flatlist