изменение цвета при условии в ионной 3 - PullRequest
0 голосов
/ 12 марта 2019

Я хочу изменить цвет в зависимости от условия. Я показываю n карточек, фон карты которых должен меняться в зависимости от состояния.

users.map((item)=>{

if(item.userType == "private"){

document.documentElement.style.setProperty('--customcolor',"yellow");

}

else if(item.userType == "private"){

document.documentElement.style.setProperty('--customcolor',"blue");

}

});
 :root {
    --customcolor: red;
  }
  
  .oddmes {
    background-color: var(--customcolor);
  }
  
<ion-list><br/>
 <ion-card  class="oddmes" *ngFor="let user of users">
  <ion-card-content >
     <b>{{user.user_name}} </b>
     <p>{{user.feedback}}</p>
    </ion-card-content>
   </ion-card>
 </ion-list>

обновит цвет, который удовлетворяет условию в конце цикла

спасибо заранее

Ответы [ 2 ]

1 голос
/ 12 марта 2019
  1. NgStyle директива позволяет вам установить свойства стиля заданных элементов DOM.

    [ngStyle]="{'background-color':user.userType === 'private' ? 'green' : 'red' }"

  2. NgClass позволяет динамически устанавливать класс CSS для элемента DOM.

    [ngClass]="{'text-success':user.userType === 'private'}"

  3. Также вы можете создать свою собственную пользовательскую функцию, такую ​​как

    [ngStyle]="{'color':getColor(user.userType)}"

1 голос
/ 12 марта 2019

Просто используйте:

<div [color]="item.userType == 'private' ? 'primary' : 'secondary'"> 
Dynamic color 
</div> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...