Angular Material 7 - SnackBar

o <MatSnackBar>, uma diretiva angular, é usado para mostrar uma barra de notificação para mostrar em dispositivos móveis como uma alternativa de caixas de diálogo / pop-up.

Neste capítulo, vamos mostrar a configuração necessária para mostrar uma lanchonete usando Angular Material.

A seguir está o conteúdo do descritor do módulo modificado app.module.ts.

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {MatButtonModule,MatSnackBarModule} from '@angular/material'
import {FormsModule, ReactiveFormsModule} from '@angular/forms';
@NgModule({
   declarations: [
      AppComponent
   ],
   imports: [
      BrowserModule,
      BrowserAnimationsModule,
      MatButtonModule,MatSnackBarModule,
      FormsModule,
      ReactiveFormsModule
   ],
   providers: [],
   bootstrap: [AppComponent]
})
export class AppModule { }

A seguir está o conteúdo do arquivo host HTML modificado app.component.html.

<button mat-button (click)="openSnackBar('Party', 'act')">Show snack-bar</button>

A seguir está o conteúdo do arquivo ts modificado app.component.ts.

import {Component, Injectable} from '@angular/core';
import { MatSnackBar } from "@angular/material";
@Component({
   selector: 'app-root',
   templateUrl: 'app.component.html',
   styleUrls: ['app.component.css']
})
export class AppComponent {
   constructor(public snackBar: MatSnackBar) {}
   openSnackBar(message: string, action: string) {
      this.snackBar.open(message, action, {
         duration: 2000,
      });
   } 
}

Resultado

Verifique o resultado.

Detalhes

  • Aqui, criamos um botão usando tapete-botão em cujo clique mostramos a lanchonete.