Alert.alert()
вызывает собственный код.
Если вы хотите отобразить свой пользовательский компонент оповещения, вам нужно добавить его в ваш метод рендеринга.
Было бы проще поместить его в корень или какой-либо другой родительский компонент.
Установите компонент, который будет отображаться условно. Создайте метод для установки условия. Вы можете передать этот метод своим дочерним компонентам.
this.alertToggle = (displayAlert) => this.setState({displayAlert});
render(){
return (
<Parent>
{this.state.displayAlert && <CustomAlert/>}
<Child alertToggle={this.alertToggle}
</Parent>
)
}
Вы можете позвонить this.props.alertToggle(true)
, чтобы отобразить компонент оповещения в родительском элементе.
РЕДАКТИРОВАТЬ: Так как вы сделали компонент с использованием модального, вы можете передать отображение логического к компоненту CustomAlert и запустить модальное внутри компонента.
<CustomAlert displayAlert={this.state.displayAlert} />
Идея размещения настраиваемого оповещения у родителя такая же.