Я создаю приложение, в котором я использую модал на разных экранах. Я создал общий компонент для всех модальных. Я передаю JSX в нем и сделать его видимым в соответствии с глобальной переменной. Но проблема возникает, когда я открываю модальное окно, затем закрываю его и перехожу на следующий экран, а затем открываю другой модальный на следующем экране, модал предыдущего экрана также появляется в фоновом режиме.
Я пытался сделать его видимым на основе двух переменных, таких как Глобальная переменная и другой локальной переменной, но все же модальный не закрывается.
Это мой обычный модальный компонент
render() {
let { GlobalStore, renderContent = () => {}, modalStyle, modalHeight = '50%' } = this.props;
return (
<Modal
isVisible={GlobalStore.showModal}
backdropColor={Constants.COLORS.BLACK}
backdropOpacity={0.4}
onBackdropPress={() => GlobalStore.toggleModal(false)}
style={[styles.bottomModal,modalStyle]}>
<View style={[styles.modalContent,{height: modalHeight}]}>
{renderContent}
</View>
</Modal>
)
}
}
и использование его на экранах, таких как
{this.openModal?
<CustomModal visible={GlobalStore.showModal&&this.openModal}
modalHeight = {this.modalHeight} renderContent =
{this.ModalContent()}/>
:
null
}
Я просто хочу закрыть предыдущие модалы, которые идут в фоновом режиме. Я не хочу создавать разные файлы для всех модалов. Любая помощь будет принята. Спасибо.