我的A类中有一个listview,它的呈现方式如下:
<ListView
style = {Styles.itemList}
dataSource = {this.state.dataSource}
renderRow = {(data) => <MyItem {...data} />}
/>
我将我的项目分隔到另一个文件,因为列表项目非常复杂,如下所示:
const MyItem = (props) => {
return (
<View style={Styles.container}>
....
<Text>{props.firstElement}</Text>
....
</View>
);
}
我在MyItem组件中有一个TouchableHighlight(Button)组件,一旦按下,我就必须更改listview的数据源(在我的A类中),如何从MyItem触发或调用此数据源的setState (属于不同的班级)。
有什么解决方案吗?谢谢。
答案 0 :(得分:0)
您可以使用回调函数,只需将您在A类上创建的函数传递给renderRow = {(data) => <MyItem callback={this.MyChangeList} {...data} />}
。
你可以使用this.props.callback()
在你的MyItem类中调用它。