меню

ngStyle динамические стили

Сформируем в конструкторе компонента варианты значений, в зависимости от которых назначим стиль backgroundColor у элемента.

\app\server\server.component.ts:

 
constructor() {
    this.serverStatus = Math.random() > 0.5 ? 'online' : 'offline';
}
  

constructor()- метод конструктор в TypeScript

\app\server\server.component.html:

 
<p [ngStyle]="{backgroundColor: getColor()}">
  {{ 'Server' }} id is {{ getServerID() }} and status is {{ serverStatus }}
</p>
  

Название директивы - ngStyle, квадратные скобки ипользуются для связывания.

\app\server\server.component.ts:

  
getColor() {
    return this.serverStatus === 'online' ? 'green' : 'red';
}
 

таким образом, директива ngStyle связывается с функцией, которая возвращает цвет для backgroundColor

Вместо {backgroundColor: getColor()} можно написать {'background-color': getColor()}. Это js object. Ключ - название свойства. Вариант с КэмелКейс ангуляровский синтаксис, но в кавычках можно вписать и традиционный css вариант написания.


Возможно, вам будет интересно

Route. Обновление шаблона

Обновление шаблона при динамическом роутинге и отписка от наблюдения

Директива атрибута

Создание директивы атрибута и использование класса Renderer2 в Angular

Observable. Subscribe и Unsubscribe

Stream и работа с Observable в Angular. Пример отписки в ngOnDestroy()

Формы в Angular

Модели работы с формами в Angular

Оформление заявки

Документы на создание сайта

Изучите наше коммерческое предложение, заполните БРИФ и отправьте его на почту maxidebox@list.ru. Изучив все пожелания из БРИФ-а, обратным ответом оповестим Вас по стоимости разработке, ответим на вопросы.

КП на создание сайта Коммерческое предложение на созданеи сайта

Мы берем на себя ответственность за все стадии работы и полностью избавляем клиентов от забот и необходимости вникать в тонкости.

Скачать БРИФ (акета) на создание сайта Скачать БРИФ (акета) на создание сайта

Зополните у БРИФ-а все необходимые поля. Сделайте краткое описание к каждому из пунктов анкеты, привидите примеры в соответсвующий пунктах - это позволит лучше понять Ваши ожидания и требования к сайту