Я работаю в проекте Angular 9.
У меня есть служба, которую я использую в компоненте. Параметром для метода в сервисе является указание имени panelClass. Вместо использования строк я бы хотел использовать перечисления для этого. Но я не уверен, как использовать перечисления таким образом.
Вот мой сервис, у меня уже объявлен мой enum:
export enum SnackBarPanelClass {
fail = "snack-bar-fail",
success = "snack-bar-success"
}
@Injectable({
providedIn: "root"
})
export class SnackBarService {
constructor(private snackBar: MatSnackBar) {}
showMessage(msg: string, panelClass: SnackBarPanelClass): void {
const config = new MatSnackBarConfig();
config.panelClass = [panelClass];
this.snackBar.open(msg, "x", config);
}
}
Как бы я получил это перечисление из компонента? Вот пример того, как компонент в настоящее время использует службу (со строковым параметром вместо enum):
this.snackBarService.showMessage("There was an error getting info", "snack-bar-fail");
Как бы я использовал здесь enum вместо строки?