如何根据ngFor循环中项目的属性更改Angular中组件上已绑定的“标签”?

我找到了很多有关绑定,ngIf,ngFor以及所有这些东西的文章,但对我的特定问题没有任何帮助。 感觉就像我只是错过了一些语法规则。

以下问题: 如果重复执行ngFor循环中的某个步骤,则应在其转换后的名称中添加(1)。现在,它将显示整个'step.header |将'转换为标签,而不是其背后的内容。

<div *ngFor="let step of dataService.current.steps" >
            <component 
            ...
            [label]="!step.repeated ? 'step.header | translate' : 'step.header | translate' + ' (1)'"
            ...
           </component>
</div>

我希望这个问题可以解决。

非常感谢您!

dhtz125 回答:如何根据ngFor循环中项目的属性更改Angular中组件上已绑定的“标签”?

如果要将管道用作复杂表达式的一部分,则应将其用括号括起来。由于主要部分相同,因此您还可以简化表达式:

<div *ngFor="let step of dataService.current.steps">
    <component 
        [label]="(step.header | translate) + (step.repeated ? ' (1)' : '')">
    </component>
</div>
本文链接:https://www.f2er.com/3166488.html

大家都在问