Как я могу отобразить элемент только в FlatList, если item.id совпадает с идентификатором в json?
Я новичок в реакции на нативный и JavaScript, так что, возможно, это глупый вопрос.
Мой код на данный момент:
export default class DetailsScreen extends Component {
constructor(props) {
super(props);
this.state = {
isLoading: true,
dataSource: [],
};
}
componentDidMount() {
this.setState({
isLoading: false,
dataSource: data.data
});
}
render() {
if (this.state.isLoading) {
return (
<View>
<ActivityIndicator />
</View>
);
}
return (
<View>
<FlatList
data={this.state.dataSource}
renderItem={({ item }) => (this.renderDetailView(item))}
keyExtractor={(item, index) => index.toString()}
/>
</View>
);
}
}
Это простой рендеринг Flatlist, и эта работа довольно хороша.'RenderDetailView' очень сложный и длинный, поэтому я не мог добавить код.
Но это выглядит так:
renderDetailView(item) {
return (
<View style={styles.info} key={item.id}>
<View>
<Text style={styles.detailView}>
{item.name}
</Text>
<Text>{'\n'}</Text>
</View>
...
</View>
);
}
В конечном проекте я хочу обработать щелчок надругой FlatList и показать детали выбранного элемента.Элемент, по которому щелкнули, «отправляет» идентификатор этому классу, и поэтому я получаю конкретный detailView.
Извините за мой плохой английский.