Reactstrap оповещение автоматически скрыто

Я новичок в React и использую Alert - при выходе из Reactstrap мне нужно предупреждение автоматически исчезнет через 2 секунды. Я пытался найти какую-нибудь функцию, которую можно было бы сделать, но, к сожалению, не смог. Спасибо за помощь


person user3468921    schedule 11.11.2018    source источник


Ответы (3)


Взгляните на этот код, скрывает предупреждение через определенное время

если вы хотите показать предупреждение о каком-либо действии, вы можете включить состояние, связанное с этим предупреждением, и отключить его, когда вы хотите его скрыть.

person Shubham    schedule 11.11.2018

У меня была похожая проблема. Моей целью было показать предупреждающее сообщение после закрытия модального окна. Я использую response-bootstrap для компонента Modal и Alert с useState и использую обработчики эффектов.

const [visibleAlert, setVisibleAlert] = useState(false); --> init state

const handleVisible = () => { ---> Last State for Alert
    setAlertVisible(true)
    setTimeout(() => { ---> 2 seconds later which is closing
        setAlertVisible(false)
    }, 2000);
} 

useEffect(() => {

    handleClose();  ----> This is for Modal
    return () => {
    handleVisible();  ---> This is for Alert message
};

А это мой компонент оповещения.

<Alert show={visibleAlert} variant="success"} dismissible>
    Employee List Updated Successfully.
</Alert>
person Arin Yazilim    schedule 22.11.2020

Мне нравится играть с предупреждениями: вот полный динамический пример, в котором я устанавливаю одно предупреждение и контролирую его в соответствии с моими требованиями.

1-го нам нужно установить оповещение. Если вы используете reactstrap, используйте заглавную букву A для предупреждений.

<Alert color={this.state.alertColor} isOpen={this.state.Alertvisible} toggle={(e) => this.setState({Alertvisible: false})}> {this.state.message} </Alert>

как видите, я могу динамически управлять цветом, видимостью и содержанием предупреждения без необходимости устанавливать несколько предупреждений.

вот часть, где я контролирую оповещение

this.setState({
            
Alertvisible: true, 
alertColor: 'success', 
message: 'Alerts are awesome!'}, 

()=> {window.setTimeout(()=>{this.setState({Alertvisible:false})},8000)
});

Итак, позвольте мне объяснить, что здесь происходит! с помощью alertvisible: true мы показываем предупреждение, с помощью alertcolor: мы устанавливаем цвет в соответствии с сообщением responsestrap или bootstrap: здесь мы помещаем содержимое того, что мы хотим отобразить

в конце вы замечаете, что window.setTimeout (() => установлено на тайм-аут в 8000 (8 секунд)

не забудьте добавить свои состояния в конструктор.

Надеюсь, это поможет: D

person jerryurenaa    schedule 10.04.2020