如何更改从列表中选择的项目的背景颜色?

测试
import { Component } from '@angular/core';

export class Hero {
    name: string;
}

const HEROES: Hero[] = [
    { name: 'STWX1' },
    { name: 'STWX2' },
    { name: 'STWX3' },
    { name: 'STWX4' }
];

@Component({
    selector: 'my-app',
    template: `
        <div style="display: inline-block; width = 200px; ">
            <ul class="heroes">
                <li *ngFor="let hero of heroes" (click)="onSelect(hero)"
                    [class.selected]="hero === selectedHero">
                     <p [style.background-color]="getStyle()">{{hero.name}}</p>
                </li>
           </ul>
       </div>'
   ,
   styles: [...]
})

export class AppComponent  {
 public showStyle: boolean = false;

    name = 'Angular1';
    testRequestId = '3224';
    heroes = HEROES;
    selectedHero: Hero;

    goToDivClick() {
        return HEROES;
    }

    onSelect(hero: Hero): void {
        this.showStyle = true;
        this.selectedHero = hero;
    }

getStyle() {
        if (this.showStyle) {
            return "grey";
        } else {
            return "";
        }
    }
}

我想更改从列表中选择的项目的背景。根据我上面的代码,我有一个列表,并且尝试调用getStyle()方法将所选项目的背景色更改为Yellow。到目前为止,所有列表项的颜色都在变化。在我的示例中,我没有获得如何仅为所选英雄专门更改颜色的方法。你能告诉我我要去哪里了吗?

贡特·佐赫鲍尔(GünterZöchbauer)
<p [style.background-color]="getStyle(hero)">

    getStyle(hero) {
        if (hero === this.selectedHero) {
            return "grey";
        } else {
            return "";
        }
    }

要么

<p [style.background-color]="hero===selectedHero ? 'grey' : ''">

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何动态更改JList中所选项目的背景颜色

如何更改ListView中每个项目的背景颜色?

在RecyclerView中更改所选项目的背景颜色

如何更改QStringListModel项目的颜色?

如何在导航抽屉中更改所选项目的背景颜色

如何更改微调器项目的背景颜色

当项目从一个多选列表中新添加/删除时,更改项目的背景颜色

如何更改仅在dc.js复合barChart中选择的项目的轴标签

Flutter使用ListView.Builder:如何在选择了所有项目的情况下更改仅一项的背景颜色

如何在vb.net的列表框中选择项目的值和名称

如何在T-SQL中选择项目的更改的修改日期

在“多选模式”中选择时,更改列表视图项的布局背景颜色

在列表视图中选择列表项时,如何更改其颜色?

当用户在颜色选择器中选择特定颜色时,如何更改div的背景颜色?

在列表中选择后的SWT项目颜色

如何在导航抽屉中更改列表中选定项目的颜色?

选择该颜色的选择列表选项时如何更改该文件的背景颜色

如何从选定的项目(对象)更改列表框项目的颜色?

Android - 更改 NavigationView 中单个项目的背景颜色

如何从 MainActivity 更改 RecyclerView 项目的颜色?

如何根据项目值更改列表视图项目的单元格(背景色或前景色)的颜色

如何更改列表视图中所选项目的背景颜色

如何使用伪类更改多选列表中所选项目的背景颜色

我想通过从下拉列表中选择颜色来更改面板的背景颜色

如何更改回收视图中所选项目的背景颜色。我也希望它自动选择第一个项目(白色背景)

如何链接到从下拉列表中选择项目的页面

防止项目背景颜色更改平面列表

如何传递从 django 表单操作 url 的下拉列表中选择的项目的 id?

固定类型时,根据 Flutter 中选择的项目更改整个底部导航栏的背景颜色