angular - Angular - ngClass 在按钮单击之前已经存在
问题描述
现在发生的问题,由于我输入的条件,当我加载页面时已经存在正确的类,它找到selectAnswer = false并将正确的类放在父级中。有没有办法解决这个问题?
HTML
<div class="question-options" *ngFor="let item of search.options;let j = index">
<div class="statement-row" [ngClass]="(selectAnswer =='true')?'wrong':'correct'">
<div class="statement-question">
<div class="qitem-text">
<div class="qitem-textbox">
<p>{{item.statement}}</p>
</div>
</div>
<div class="ccq">
<div class="qitem qclose" (click)="selectAnswer = 'true'">
<i class="qitembox qclose-icon"></i>
</div>
<div class="qitem qtick" (click)="selectAnswer = 'false'">
<i class="qitembox qtick-icon"></i>
</div>
</div>
</div>
</div>
</div>
TS
public selectAnswer = {};
在这种情况下,我不知道如何管理状态。任何帮助都会很棒。谢谢!
解决方案
我不知道您的模型结构,但在您的项目中*ngFor
*ngFor="let item of search.options
该项目应具有属性selectAnswer
,例如
item.selectAnswer
那么你的代码如下所示
<div class="question-options" *ngFor="let item of search.options;let j = index">
<div class="statement-row" [ngClass]="(item.selectAnswer =='true')?'wrong':'correct'">
<div class="statement-question">
<div class="qitem-text">
<div class="qitem-textbox">
<p>{{item.statement}}</p>
</div>
</div>
<div class="ccq">
<div class="qitem qclose" (click)="item.selectAnswer = 'true'">
<i class="qitembox qclose-icon"></i>
</div>
<div class="qitem qtick" (click)="item.selectAnswer = 'false'">
<i class="qitembox qtick-icon"></i>
</div>
</div>
</div>
</div>
</div>
希望这会帮助你。
推荐阅读
- python-3.x - 了解虚拟陷阱?Python3
- node.js - 如何随时请求更新令牌 JWT?
- php - PHP如何为新帖子创建新网址
- python-3.x - Pandas - 在 python 中将 hh:mm 和 hh:mm:ss 转换为标准 hh:mm:ss
- amazon-web-services - 使用 ecs-cli 时无法承担服务相关角色
- haproxy - 为什么 HAProxy 默认使用 HTTP OPTIONS 进行健康检查?
- ruby-on-rails - 在 Heroku 中发送电子邮件失败
- excel - 计算 # 次值组合出现在不同的行/列中
- python - 'ValueError:使用序列设置数组元素。' 训练模型时的消息
- c# - 如何在解决方案中找到不兼容的引用?