当前位置: 首页 > 知识库问答 >
问题:

如果然后elseif然后其他然后-角4中的语句

湛宝
2023-03-14

根据angular 4项目中的状态条件,我必须将4个可用类(黄色、绿色、红色和白色)中的一个应用到我的div。

<div *ngIf="item.status=='pending'; then yellow 
elseif item.status=='completed'; then green ... else white">
div content...
</div>

上述陈述中只有一个条件可以为真。

如何实现这一点(如果其他如果其他...Angular4) 中的其他语句?

共有3个答案

卢树
2023-03-14

您还可以从后端逻辑获得类名,如下所示:

<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;
}
公冶俊达
2023-03-14

如果这些是类,那么您不需要*ngIf,而是需要< code>ngClass。

像这样使用它

<div 
  ngClass="{yellow: item.status=='pending',
            green: item.status=='completed',
            white: item.status!='pending' && item.status!='completed'
           }"
>
...
</div>
艾正浩
2023-03-14

使用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’;
  }
}
 类似资料:
  • 在编写测试用例时,我使用Mockito模拟某个类。 有没有办法在返回值之前打印一些语句?例如: 上述声明有效,但我无法做到以下几点:

  • 本文向大家介绍iOS 然后初始化,包括了iOS 然后初始化的使用技巧和注意事项,需要的朋友参考一下 示例 这在语法上类似于使用位置常量进行初始化的示例,但是需要Thenhttps://github.com/devxoul/Then的扩展名(如下所示)。 该Then扩展:            

  • 我对函数的契约有一些误解 返回一个新的,当此阶段正常完成时,将此阶段作为提供函数的参数执行。 函数似乎接受这个完成阶段的结果,而不是完成阶段本身。那么这是什么意思呢? 那么由返回的CompletableFuture表示的任务呢? 这是否意味着,由返回的CompletableFuture表示的任务将在与可运行r相同的线程池中执行?

  • 我对反应性编程相对较新。我的问题是关于

  • 问题内容: 角度1.2: 我的功能状态不正确? 单击后,我想要状态。 问题答案: 和的执行顺序不明确,因为它们没有定义明确的优先级。相反,你应该使用或上,以确保您获得的正确值 模型 变量。 在您的情况下,这应该可以工作:

  • 问题内容: 题 我想启动Chrome网络浏览器作为访问特定网站的过程,然后等待它关闭。 一种特殊情况是浏览器可能已经打开并正在运行,因为用户可能已经访问过某些网站。 在这种情况下,浏览器可能会在现有窗口中打开一个新选项卡,并且新启动的过程将立即终止。这不应该使我的等待过程感到困惑:要么,我想要一个新的浏览器窗口(如果可以通过命令行参数强制执行),然后等待直到将其关闭,或者保留现有的浏览器窗口,并等