Como mostrar mensajes emergentes
Introducción
En las aplicaciones web donde se requiere tener una constante comunicación con el usuarios es necesario decirles que sucede después de realizar algún paso dentro del flujo de las aplicaciones, por tal motivo es muy útil utilizar mensajes emergentes.
Implementación
Para implementar esta funcionalidad es necesario agregar el código en el layout de las vistas del proyecto, que normalmente se encuentra dentro de la carpeta "/layouts/main.php" esto puede variar dependiendo del tema que tengas instalado si es que tienes un tema en especial.
<?php
if (Yii::$app->session->hasFlash('success')) {
?>
<div class="alert alert-success alert-dismissible mb-2" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<strong> <?= Yii::$app->session->getFlash('success') ?></strong>
</div>
<?php
}
if (Yii::$app->session->hasFlash('error')) {
?>
<div class="alert alert-danger alert-dismissible mb-2" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<strong> <?= Yii::$app->session->getFlash('error') ?></strong>
</div>
<?php
}
if (Yii::$app->session->hasFlash('info')) {
?>
<div class="alert alert-info alert-dismissible mb-2" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<strong> <?= Yii::$app->session->getFlash('info') ?></strong>
</div>
<?php
}
if (Yii::$app->session->hasFlash('warning')) {
?>
<div class="alert alert-warning alert-dismissible mb-2" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<strong> <?= Yii::$app->session->getFlash('warning') ?></strong>
</div>
<?php
}
?>
Uso
En Yii2 la forma más simple de hacerlo es con el siguiente línea.
Yii::$app->session->setFlash('success', "Proceso exitoso");
Lo que muestra esta línea es un mensaje emergente, el cual se coloca usualmente dentro del controller.
La vista puede variar dependiendo de la versión de bootstrap que tengas instalado.
Pueden utilizarse los mismos tipos de mensajes que bootstrap.
'success'
'info'
'warning'
'danger'
Fuentes:
https://www.yiiframework.com/wiki/21/how-to-work-with-flash-messages
https://getbootstrap.com/docs/4.4/components/alerts/
Comentarios
Publicar un comentario