Angular. Enum values in template

Angular не позволяет напрямую использовать перечислимый тип (Enum) в шаблонах. Необходимо создавать свойство, которому присваивать выбранный Enum и в шаблоне использовать это свойство.

import { Component, Input } from '@angular/core';

enum Size = {
  XLarge,
  Large,
  Medium,
  Small
}

@Component({
    selector: 'app-size-select',
    template: `
        <select [ngModel]="selectedSize">
            <option value="{{ size.XLarge }}">Extra Large</option>
            <option value="{{ size.Large }}">Large</option>
            <option value="{{ size.Medium }}">Medium</option>
            <option value="{{ size.Small }}">Small</option>
        </select>    
    `
})
export class SizeSelectComponent { 
    @Input() selectedSize: Size;
    size = Size;
}

Похожие записи

Как добавить ng-bootstrap компоненты в проект Angular-CLI?

Покажу на примере нового проекта.

ng new project_name
cd project_name
npm install --save bootstrap@next
npm install --save @ng-bootstrap/ng-bootstrap

В angular-cli.json в секцию style надо добавить наш CSS, чтобы глобально подключить стили.

  "styles": [
    "styles.css",
    "../node_modules/bootstrap/dist/css/bootstrap.min.css"
  ],
17 августа 2017 г. в Angular

ngx translate attribute

Используется конструкция

<img src="image.jpg" [alt]="'KEY' | translate"> 
20 августа 2018 г. в Angular

Angular attribute setter

Пример задания значения булева Input свойства как директивы, на примере:

09 октября 2018 г. в Angular

Angular. Редирект по условию

Пример условного перенаправления пользователя в зависимости от некого количества

  • 0 - dashboard
  • 1 - карточка
  • 2 и более - список
10 января 2019 г. в Angular