2017-11-29 2 views
2

Ich muss den Hintergrund von der Snackbar Komponente ändern. Ich verwende es, um den Benutzer über einige Fehler oder abgeschlossene Aktionen des Benutzers zu informieren oder zu informieren.Angular 5 und Material - Wie ändert man die Hintergrundfarbe von SnackBar Komponente

Die Materialversion aus dem Projekt. "@ eckig/material": "^ 5.0.0-rc.1",

Die Dokumentation https://material.angular.io/components/snack-bar/api sagen über eine API, um die Klasse zu ändern.

panelClass: Zeichenfolge | string [] Zusätzliche CSS-Klassen, die zum Snackbar-Container hinzugefügt werden.

Dies ist, was ich in der CSS-Datei hinzufügen.

.mycsssnackbartest { 
    background-color: blue; 
} 

Dies ist der Code die snackbar zu öffnen

this.snackBar.open('Informing the user about sth', 'User Message' , { 
    panelClass: ['mycsssnackbartest '] 
}); 

Was mache ich falsch?

+2

'MatSnackBarConfig' ein Feld hat benannte 'extraClasses'" Zusätzliche CSS-Klassen, die zum Snackbar-Container hinzugefügt werden. " Sie verwenden 'panelClass', das es nicht existiert –

+0

Wenn PanelClass in der API-Dokumentation gefunden. https://material.angular.io/components/snack-bar/api. Ich habe extraClasses nicht verwendet, da in der Dokumentation angegeben wird, dass es veraltet ist. Aber ich werde es testen. Vielen Dank. –

Antwort

3

können Sie verwenden, um die extraClasses Optionsklassen anwenden auf einem snackbar

this.snackBar.open(message, action, { 
    duration: 2000, 
    extraClasses: ['blue-snackbar'] 
}); 

CSS (in styles.scss):

.blue-snackbar { 
    background: #2196F3; 
} 

Siehe Stackblitz example

+0

Vielen Dank. Es funktionierte. Ich habe keine scss-Datei benutzt. Ich habe versucht, es in der CSS-Datei von der Komponente zu setzen. –

Verwandte Themen