html - 根据响应属性 Angular 更改背景颜色

标签 html css angular typescript

我从 API 请求数据,然后我得到响应对象,所以使用 *ngFor,我设法显示了一些我想要的数据,问题是一些 css 需要根据响应属性实现,对于我的数据,我有银行和状态列表。基于属性状态离线 我需要更改背景颜色,只需要显示 Offline 状态 only.I had managed to change the background color, this is what I had tried:

html文件

<ul class="ul1">
  <li 
  [style.background]="getBackgroundColor(p.status)"
   class="li1" *ngFor="let p of myData?.paymentChannels">
  <span>{{p.name}}</span>
  <br>
  <span>{{p.status}}</span>
  </li>
</ul>

ts 文件

  getBackgroundColor(status) {
    switch (status) {
      case 'Offline':
      return 'grey';
    }
  }

预期输出: enter image description here

这也是我的stackblitz演示,我可以使用一些建议来解决我的问题。

最佳答案

我会建议这样的事情:

<ul class="ul1">
  <li 
  [ngClass]="{offline: p.status == 'Offline'}"
   class="li1" *ngFor="let p of myData?.paymentChannels">
  <span>{{p.name}}</span>
  <br>
  <span> {{p.status == 'Offline' ? p.status : '&nbsp;'}}</span>
  </li>
</ul>

并添加到CSS:

.offline {
  background-color: gray;
}

关于html - 根据响应属性 Angular 更改背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58077464/

相关文章:

html - 是否可以在多个内联表单中对齐输入/标签?

html - CSS 水平对齐段落

angular - 在 ngFor 中动态分配元素 id

css - 如何缩放我的 css/html 下拉菜单?

html - 寻找更好的方法来设置可调整大小的背景 Css3/HTML/mootools

PHP 优化 : Fetching from database

css - 如何用CSS显示和隐藏一个div?

html - Logo 未占据标题的全高

javascript - Angular2指令修改点击处理

templates - 在 Go 服务器 : download fail 上加载 Angular2 Bootstrap 模板 ng2-admin