【发布时间】:2019-04-26 05:55:43
【问题描述】:
我在 react native 中有两个组件,我无法从我的子组件中关闭模式。
ListTrips - 父级
ModalAddTrip - 孩子
ListTrips.js
import ModalAddTrip from './ModalAddTrip';
....
....
this.state = {
isModalAddTripVisible: false
}
....
handleDismissModalAddTrip = () => {
this.setState({ isModalAddTripVisible: false });
};
closeModal() {
this.refs.ModalAdd.handleDismissModalAddTrip();
}
....
<ModalAddTrip
ref="ModalAdd"
isVisible={this.state.isModalAddTripVisible}
onBackDropPress={this.handleDismissModalAddTrip}
closeModal={() => this.closeModal()}
onRequestClose={this.handleDismissModalAddTrip}
/>
ModalAddTrip.js
<Modal
isVisible={isVisible}
onBackdropPress={onBackDropPress}
closeModal={this.props.child}
>
<Button
style={{ fontSize: 18, color: 'white' }}
containerStyle={{
padding: 8,
marginLeft: 70,
}}
onPress={this.closeModal}
>
一旦我打开它,我就无法关闭它。我知道它与引用/道具有关,但我已经搞砸了好几个小时,但我无处可去。我正在尝试类似于this.props.closeModal; 的方法,同时将 ref 切换到子组件,但它也不起作用。在 ModalAddTrip 的函数中,但这也不起作用。
非常感谢任何帮助。 谢谢
【问题讨论】:
标签: react-native modal-dialog ref react-props