我在问一些可能微不足道的事情,但这一直困扰着我。
假设我们有一个CHILD组件可以呈现一些按钮:
const Picker = ({ data, label, visible, cancelCallback, onPressCallback }) => {
function renderRow (data) {
return data.map((el) => {
return (
<TouchableOpacity
style={listViewItemContainer}
key={el.label}
onPress={}
>
<Text style={listViewItem}> { el.label } </Text>
</TouchableOpacity>
);
});
}
return (
<Modal
visible={visible}
animationType="fade"
onRequestClose={() => {}}
transparent={true}
>
<View style={listViewContainerStyle}>
{ renderRow(data) }
</View>
</Modal>
);
};
现在,当我按下其中一个按钮时,我想要回调父母但是我想传递一些参数,比如按下的元素的标签。类似的东西:
<TouchableOpacity
style={listViewItemContainer}
key={el.label}
onPress={onPressCallback(el.label)} // onPressCallback is a Prop passed to the child
>
<Text style={listViewItem}> { el.label } </Text>
</TouchableOpacity>
然后处理父组件中的逻辑。 我怎么能这样做?
答案 0 :(得分:3)
喜欢这个。
onPress={() => onPressCallback(el.label)}