我有一个Post组件,用于在FlatList中渲染帖子。现在,该组件仅将文本和图像呈现到Flatlist,但是在Post组件中,基于功能又基于指定信息的功能,该按钮应执行诸如删除,打开新屏幕等操作单击的FlatList中的项目。
我的app.js的一部分
deletePost = (author) => {
alert("Deleted post by" + author)
}
renderItem = ({ item, index }) => {
return (
<Post
author={item.user}
/>
)
}
render() {
return (
<FlatList data={this.state.getData} renderItem={this.renderItem}>
</FlatList>
)
}
这是组件
const Post = (props) => {
return (
<Text onPress={() => props.delete(props.author)}>
<Icon />
</Text>
)
}
这就是我被困住的地方。我得到警报,但是作者被渲染为未定义。
答案 0 :(得分:1)
希望对您有帮助。请尝试以下操作:
renderItem = ({ item, index }) => {
return (
<Post
author={item.user}
delete={this.deletePost}
/>
)
}
deletePost方法也应如下所示。
deletePost = (author) => {
alert("Deleted post by" + author)
}
答案 1 :(得分:1)
回答注释中指定的问题后,应将arg传递给函数,例如:
deletePost = (author) => {
alert("Deleted post by" + author)
}