if then elseif then else then - Angular 4 中的语句
if then elseif then else then - statement in Angular 4
我必须从我的 4 个可用 class 中(黄色、绿色、红色和白色)应用一个 class 到我的 div根据我的 angular 4 项目中的 status 条件。
<div *ngIf="item.status=='pending'; then yellow
elseif item.status=='completed'; then green ... else white">
div content...
</div>
以上语句中只有一个条件可以为真。
如何实现这一点(if elseif elseif ... else angular4 中的语句)?
如果这些是 类 那么您不需要 *ngIf 而是需要 ngClass
.
像使用它
<div
ngClass="{yellow: item.status=='pending',
green: item.status=='completed',
white: item.status!='pending' && item.status!='completed'
}"
>
...
</div>
您还可以从 back-end 逻辑中获取 class 名称,如下所示:
<div [ngClass]="GetClassName(item.status)">
//div content...
</div>
GetClassName(status:string):string{
let className:string='white';
if(status=='pending')
{
className='green';
}
else if(status=='complete')
{
className='yellow';
}
.......
return className;
}
使用ngClass
<div [ngClass]= {
'yellow-class' : item.status =='pending',
'green-class' : item.status == 'completed',
'white-class' : item.status != 'pending' && 'item.status' != 'completed' }>
</div>
使用ngStyle
在标记中:
<div [style.color]=“getStatusColor(item.status)”>
</div>
或
<div [ngStyle]=“{color: getStatusColor(item.status)”>
</div>
在组件中:
getStatusColor(status) {
switch (status) {
case ‘pending’:
return ‘yellow’;
case ‘completed’:
return green;
default:
return ‘white’;
}
}
我必须从我的 4 个可用 class 中(黄色、绿色、红色和白色)应用一个 class 到我的 div根据我的 angular 4 项目中的 status 条件。
<div *ngIf="item.status=='pending'; then yellow
elseif item.status=='completed'; then green ... else white">
div content...
</div>
以上语句中只有一个条件可以为真。
如何实现这一点(if elseif elseif ... else angular4 中的语句)?
如果这些是 类 那么您不需要 *ngIf 而是需要 ngClass
.
像使用它
<div
ngClass="{yellow: item.status=='pending',
green: item.status=='completed',
white: item.status!='pending' && item.status!='completed'
}"
>
...
</div>
您还可以从 back-end 逻辑中获取 class 名称,如下所示:
<div [ngClass]="GetClassName(item.status)">
//div content...
</div>
GetClassName(status:string):string{
let className:string='white';
if(status=='pending')
{
className='green';
}
else if(status=='complete')
{
className='yellow';
}
.......
return className;
}
使用ngClass
<div [ngClass]= {
'yellow-class' : item.status =='pending',
'green-class' : item.status == 'completed',
'white-class' : item.status != 'pending' && 'item.status' != 'completed' }>
</div>
使用ngStyle
在标记中:
<div [style.color]=“getStatusColor(item.status)”>
</div>
或
<div [ngStyle]=“{color: getStatusColor(item.status)”>
</div>
在组件中:
getStatusColor(status) {
switch (status) {
case ‘pending’:
return ‘yellow’;
case ‘completed’:
return green;
default:
return ‘white’;
}
}