【发布时间】:2018-01-14 18:02:23
【问题描述】:
我有一个 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 属性,因为它在平面列表中正确显示。请帮忙。
【问题讨论】:
标签: react-native react-native-flatlist