【发布时间】:2020-11-16 22:12:14
【问题描述】:
所以我正在尝试使用 Angular 和 Firebase 构建一个小型 Web 应用程序,其中所述应用程序应显示玩家列表。我这样渲染的玩家列表:
<ul class="team">
<li *ngFor="let player of players">
<span class="icon icon-*xyz*"></span> {{ player.name }}
</li>
</ul>
我想要什么:根据玩家 ID,我想以不同的方式设置跨度的样式。因此,我希望“icon-xyz”类为 icon-123,其中 123 等于 player.id。
为什么我想要这个:我有一张包含每个玩家肖像的大图,通过设置这个类,我完全“剪掉”了必要的肖像。
我尝试了什么/问题:我浏览了 Angular 文档和 Google 以寻找 Angular 的功能,这将帮助我 - 但没有成功。我发现 React 提供了一种功能,其中组件具有“probs”功能,可以访问对象属性以更改样式。我还没有为 Angular 找到类似的东西,现在我的问题是是否有一些好的解决方案可以解决我的问题,或者我是否应该完全改变我的方法。
【问题讨论】:
-
这能回答你的问题吗? Angular: conditional class with *ngClass
-
我不建议您这样做stackoverflow.com/questions/35269179/…,因为在您的情况下,这会使您的代码随着您添加到列表中的每个玩家而增长。
-
@RubenHelsloot 条件分类不适用于我的用例,因为我有几百名玩家。
-
我的意思是使用this answer末尾使用的
[class]="myVariable"语法