我正在使用模态发出自定义警报,当我到达屏幕时,这工作正常,但是当我单击按钮关闭我的警报时,我无法将布尔值传递给我的父级。 Obs:警报关闭,但我需要传递布尔值,以便能够在我的父组件中再次引发警报。 这是我的父组件中的代码(我可以在这里将数据传递给我的孩子):
const [visible, setVisible] = useState(true);
const [value, setValue] = useState(0)
const raiseAlert = (visible) => {
setVisible(true);
setValue(2)
// this.setState(({ visible }) => ({ visible: !visible }))
};
const edit = () => {
setVisible(!visible);
setValue(1)
};
console.log(visible)
return(
<View style={styles.screen}>
<Button
onPress={() => raiseAlert()}
title="Connect"
/>
<Button
title= "Configure WiFi"onPress={() => edit()}
/>
子组件:
const TipsAlert = (props) => {
const [visible, setVisible] = useState(props.visible);
const closeAlert = (visible) => {
setVisible(false);<================ HOW CAN I PASS THIS BOOL to my Parent <========
// this.raiseAlert(this.props.visible)
// this.raiseAlert(this.props(false))
}
return(
<View style={styles.centeredView}>
<Modal
animationType = "slide"
transparent = {true}
visible= {visible}
>
<View style={styles.centeredView}>
<View style={styles.modalView}>
<TouchableOpacity
style={styles.exitContainer}
onPress={() => {
closeAlert();
}}
>
</TouchableOpacity>
</View>
</View>
</Modal>
</View>
);