Вы можете сделать следующее, чтобы достичь этого.
Этот snack-bar
подобен mat-dialog
.. Вы должны вызвать dismiss()
на MatSnackBarRef
DIrenderer
и MatSnackBarRef
... вам не нужен рендерер, если вы собираетесь уволить каким-либо другим способом, это только для демонстрационных целей.
@Inject(MAT_SNACK_BAR_DATA) public data,
private _snackRef: MatSnackBarRef<UploadProgressComponent>,
private ren:Renderer2
Если вы хотите уволить на индикаторе выполнениязавершив, вы можете вызвать dismiss()
в этой логике.Я собираюсь уволить по клику.
Создать прослушиватель событий клика в вашем constructor
...
{
setTimeout(()=>{
let snackEl = document.getElementsByClassName('mat-snack-bar-container').item(0);
ren.listen(snackEl, 'click', ()=>this.dismiss())
})
Создайте dismiss()
dismiss(){
this._snackRef.dismiss();
}
Stackblitz
https://stackblitz.com/edit/angular-mdyher?embed=1&file=app/snack-bar-component-example.ts