html - 如何单独更改数组中的颜色?
问题描述
基本上我正在做一个 Ionic 5 应用程序,我将一些信息从一个数组显示到一个数组中,当你点击它应该改变背景的颜色,但是当我点击它时,它会改变所有卡片的颜色,而不是唯一一个我点击了。
这是颜色变化的 .ts 部分:
private buttonColor: string = "light";
someAction() {
this.buttonColor = "primary";
}
这是.html:
<ion-grid>
<ion-row>
<ion-col *ngFor="let A of Animales">
<ion-card [color]="buttonColor" (click)="someAction()" tappable>
<ion-card-content>
<ion-title>{{A.nombre}}</ion-title>
<div><img src="{{A.imagen}}"></div>
<p>{{A.nombre}} {{A.raza}} es un {{A.especie}}. Su alimentación es a base de
{{A.alimentacion}},
por lo general viven en {{A.ecosistema}}.</p>
</ion-card-content>
</ion-card>
</ion-col>
</ion-row>
</ion-grid>
解决方案
这是工作示例
Animales = [{
nombre: "Hellow",
raza: "Hellow"
},
{
nombre: "Hellow",
raza: "Hellow"
},{
nombre: "Hellow",
raza: "Hellow"
},{
nombre: "Hellow",
raza: "Hellow"
},
]
buttonColor =['secondary','dark','danger'];
.html
<ion-grid>
<ion-row>
<ion-col *ngFor="let A of Animales ;let i = index">
<ion-card [color]="buttonColor[i]" (click)="someAction(i)" tappable>
<ion-card-content>
<ion-title>{{A.nombre}}</ion-title>
<div><img src="{{A.imagen}}"></div>
<p>{{A.nombre}} {{A.raza}}
</p>
</ion-card-content>
</ion-card>
</ion-col>
</ion-row>
</ion-grid>
推荐阅读
- javascript - 即使 ajax 调用是同步的,函数也会运行异步
- c++ - 汇编中的内联 C++ 方法
- excel - 将 WorksheetFunction.Substitute 与 Offset 结合使用时出现问题
- c# - 模态对话框无重定向
- ruby-on-rails - Rails 应用程序中的公司特定用户权限
- sql-server - 从另一列中减去一列并获得运行总 SQL Server 2008 R2
- .net - VBA - ActiveX 无法为具有依赖关系的 .net dll 创建对象
- css - 从访问数据库中按年份获取不同的计数
- javascript - 为什么记录 fetch() 的结果会“破坏”它(“主体流被锁定”)?
- dart - How to change background color of ListTile?