route page navigationend example change card based angular2 angular angular-material2

page - router angular navigationend



Angular2 material dialogo auto cierre (1)

Si quieres cerrarlo desde el diálogo:

constructor(private dialogRef:MatDialogRef<MyDialogComponent>){ } closeDialog(){ this.dialogRef.close(); }

Si quieres cerrarlo desde el padre del diálogo:

constructor(private matDialog: MatDialog){} //anywhere let dialogRef = this.matDialog.open(MyDialogComponent); dialogRef.close();

Usé el material MdDialog para mostrar una forma.

Cuando el usuario envía el formulario, se envía una solicitud al backend y, si la solicitud es exitosa, debo cerrar el cuadro de diálogo. Si la solicitud de backend falla, debo mantener el cuadro de diálogo abierto.

Puedo cerrar el diálogo usando un botón como el siguiente.

<button md-raised-button md-dialog-close>Cancel</button>

Pero, en este caso, solo necesito cerrar el cuadro de diálogo solo si la solicitud de back-end es exitosa, así que necesito una forma de cerrar el cuadro de diálogo mediante programación.

El componente que se muestra dentro del diálogo no tiene la referencia del diálogo, y no conozco ninguna otra forma de cerrar automáticamente el diálogo desde el componente.

¿Hay alguna manera de cerrar el diálogo dentro del componente dentro del diálogo?