У меня есть FlatList, и я пытаюсь добавить кнопку под элементами, и когда вы нажимаете на кнопку, она должна отображать имя элемента в предупреждении.
class TopMovies extends React.Component {
constructor(props) {
super(props);
this.state = {
apiTopLoaded: false,
topPopularMovies: [],
}
this.conditionalTopPopular = this.conditionalTopPopular.bind(this);
this.mybuttonclick = this.mybuttonclick.bind(this);
}
componentDidMount() {
fetch('someurls')
.then((response)=>{
response.json()
.then((popularMovies) => {
this.setState({
apiTopLoaded: true,
topPopularMovies: popularMovies.results,
})
})
})
mybuttonclick() {
Alert.alert(item.original_title)
}
conditionalTopPopular() {
if(this.state.apiTopLoaded===true) {
return(
<FlatList
horizontal={true}
data={this.state.topPopularMovies}
renderItem={({ item }) => (
<View>
<Text>{item.original_title}</Text>
<Button onPress={this.mybuttonclick} title="hello"/>
</View>
)}
keyExtractor={item => item.id}
/>
</View>
)
}
}
Я вижу все названия фильмов в списке и вижу кнопки под названиями фильмов, но когда я нажимаю на них, появляется сообщение «не могу найти переменный элемент». Функция mybuttonclick
должна предупреждать реквизит item.original_title
, потому что он правильно отображается в плоском списке. Пожалуйста помоги.