【问题标题】:How do I force [ngClass] to re-evaluate a function?如何强制 [ngClass] 重新评估函数?
【发布时间】:2020-04-17 20:40:15
【问题描述】:

Angular v8。我有一个使用 [ngClass] 指令的标签。该表达式调用一个函数。条件改变后,如何让 ngClass 重新评估所述表达式?它似乎只被调用一次。标签位于 ng-template 元素内。例如

<ng-template let-file>
<div [ngClass]="{'primary-class' : 'isPrimary()'}">text</div>
</ng-template>

【问题讨论】:

  • 你可以试试&lt;div [class.primary-class]="isPrimary()"&gt;text&lt;/div&gt;。并检查没有ChangeDetectionStrategy.OnPush
  • isPrimary 函数有什么作用?它是一个复杂的函数还是一个简单地返回一个值的函数
  • 你将函数用单引号括起来,删除它:{'primary-class':isPrimary()},或者考虑 Guiacomo 的评论

标签: angular ng-class


【解决方案1】:

我在发布后不久就开始工作了。我删除了单引号。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-22
    • 1970-01-01
    • 2015-08-02
    • 2021-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-14
    相关资源
    最近更新 更多