Visão geral do componente Angular Toast
O componente Ignite UI for Angular Toast fornece informações e mensagens de aviso que são ocultadas automaticamente, não interativas e não podem ser descartadas pelo usuário. As notificações podem ser exibidas na parte inferior, no meio ou no topo da página.
Angular Toast Example
Getting Started with Ignite UI for Angular Toast
Para começar a usar o componente Ignite UI for Angular Toast, primeiro você precisa instalar Ignite UI for Angular. Em um aplicativo Angular existente, digite o seguinte comando:
ng add igniteui-angular
Para obter uma introdução completa ao Ignite UI for Angular, leia o tópico de introdução.
O próximo passo é importar o IgxToastModule
no seu arquivo app.module.ts.
// app.module.ts
...
import { IgxToastModule } from 'igniteui-angular';
// import { IgxToastModule } from '@infragistics/igniteui-angular'; for licensed package
@NgModule({
...
imports: [..., IgxToastModule],
...
})
export class AppModule {}
Como alternativa, a partir da 16.0.0
você pode importar o IgxToastComponent
como uma dependência autônoma.
// home.component.ts
import { IgxToastComponent, IgxButtonDirective } from 'igniteui-angular';
// import { IgxToastComponent, IgxButtonDirective } from '@infragistics/igniteui-angular'; for licensed package
@Component({
selector: 'app-home',
template: `
<button igxButton="contained" (click)="toast.open()">Show notification</button>
<igx-toast #toast>Notification displayed</igx-toast>
`,
styleUrls: ['home.component.scss'],
standalone: true,
imports: [IgxToastComponent, IgxButtonDirective]
/* or imports: [IgxTimePickerComponent, IgxButtonDirective] */
})
export class HomeComponent {
public time: Date;
}
Agora que você importou o módulo ou componente Ignite UI for Angular Toast, você pode começar a usar o componente igx-toast
.
Using the Angular Toast
Show Toast
Para exibir o componente toast, use seu método open()
e chame-o em um clique de botão. Você pode passar o conteúdo toast dentro do elemento.
<!--sample.component.html-->
<button igxButton="contained" (click)="toast.open()">Show notification</button>
<igx-toast #toast>Notification displayed</igx-toast>
Outra maneira de definir o conteúdo do toast é passar a mensagem diretamente como um parâmetro para o método open()
.
<!--sample.component.html-->
<button igxButton="contained" (click)="toast.open('Notification displayed')">Show notification</button>
<igx-toast #toast></igx-toast>
O método open()
também pode ser usado no arquivo AppComponent para gerenciar o valor da mensagem.
// app.component.ts
@ViewChild('toast', { read: IgxToastComponent }) public toast: IgxToastComponent;
public message: any;
public ngOnInit() {
this.message = 'Display message';
}
public showMessage() {
this.toast.open(this.message);
}
Examples
Hide/Auto Hide
Uma vez aberto, o toast desaparece após um período especificado pela entrada displayTime
que é definida inicialmente para 4000 milissegundos. Esse comportamento é habilitado por padrão, mas você pode alterá-lo definindo autoHide
como false. Dessa forma, o toast permanece visível. Usando o método toast close()
, você pode fechar o componente.
<!--sample.component.html-->
<button igxButton="contained" (click)="toast.open()">Show Toast</button>
<button igxButton="contained" (click)="toast.close()">Hide Toast</button>
<igx-toast #toast [autoHide]="false">Notification displayed</igx-toast>
Se o exemplo estiver configurado corretamente, o toast aparecerá quando o botão Show for clicado. Para o primeiro componente, o recurso de auto-ocultação está desabilitado e o toast desaparecerá ao clicar no botão 'Hide'. Nos outros dois componentes, você pode ver em ação como passar mensagens diferentes pelo método open()
e usar projeção de conteúdo.
Display Time
Use displayTime
e defina-o como um intervalo em milissegundos para configurar por quanto tempo o componente toast ficará visível.
<!--sample.component.html-->
<button igxButton="contained" (click)="toast.open()">Show notification</button>
<igx-toast #toast displayTime="1000">Notification displayed</igx-toast>
Se a amostra estiver configurada corretamente, o toast oculta automaticamente mais rápido.
Positioning
Use a propriedade positionSettings
para configurar onde o toast aparece. Por padrão, ele é exibido na parte inferior da página. No exemplo abaixo, definimos a notificação para aparecer na posição superior.
<!--sample.component.html-->
<div>
<button igxButton="contained" (click)="open(toast)">Show notification on top</button>
<igx-toast #toast>Notification displayed</igx-toast>
</div>
// sample.component.ts
import { VerticalAlignment } from 'igniteui-angular';
// import { VerticalAlignment } from '@infragistics/igniteui-angular'; for licensed package
...
public open(toast) {
toast.positionSettings.verticalDirection = VerticalAlignment.Top;
toast.open();
}
...
Estilização
Para começar a estilizar o toast, precisamos importar o arquivo index, onde todas as funções do tema e mixins de componentes estão localizados:
@use "igniteui-angular/theming" as *;
// IMPORTANT: Prior to Ignite UI for Angular version 13 use:
// @import '~igniteui-angular/lib/core/styles/themes/index';
Seguindo a abordagem mais simples, criamos um novo tema que estende o toast-theme
e aceita os parâmetros $background
, $text-color
e $border-radius
.
$custom-toast-theme: toast-theme(
$background: #dedede,
$text-color: #151515,
$border-radius: 12px
);
Note
Em vez de codificar os valores de cor como acabamos de fazer, podemos obter maior flexibilidade em termos de cores usando as palette
funções e color
. Consulte o Palettes
tópico para obter orientações detalhadas sobre como usá-los.
O último passo é passar o tema toast personalizado:
@include css-vars($custom-toast-theme);
Demo
API References
Additional Resources
Nossa comunidade é ativa e sempre acolhedora para novas ideias.