首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Angular - *ngFor中对象列表中的css样式更改

问Angular - *ngFor中对象列表中的css样式更改
EN

Stack Overflow用户
提问于 2020-03-14 02:18:17
回答 1查看 282关注 0票数 0

我有两个组件,parent:

代码语言:javascript
复制
<ng-container *ngIf="itemList != null">
  <div *ngFor="let item of itemList">
    <component-item [componentItem]="item"></component-item>
  </div>
</ng-container>

和子组件(component-item):

代码语言:javascript
复制
<div class="row myClass" [ngClass]="{'selected': isSelected }" (click)="method()">
    ...
</div>

因此,我有了项目列表。我有两个css样式:默认和“选定”。我想在点击后改变项目的样式,比如:当我点击第一个项目时,它应该变成"selected“,然后在点击第二个项目后,它应该变成"selected”,第一个项目返回到默认值。我的变量"isSelected“是一个布尔类型,我在"method()”中将它的值改为"true“。当我从列表中选择另一个项目时,如何将其值更改为"false“?

EN

回答 1

Stack Overflow用户

发布于 2020-03-14 14:19:08

代码语言:javascript
复制
Try like this, it may work

在component.ts文件中cssEnabled:any="";

代码语言:javascript
复制
private method(itemName:string)
{

 this.cssEnabled=itemName;

}
In compontent.html :

<div class="row myClass" [ngClass]="{'selected': componentItem==cssEnabled}" (click)="method(componentItem)">
    ...
</div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60675445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档