首页 > 解决方案 > ngIf 带有 as as 语法和 && 运算符

问题描述

如何将 ngIf as 语法与 && 运算符结合使用?以下代码导致“预期标识符或关键字”错误

 <control-error *ngIf="(createUserError | async as userError) && submitted">
          {{userError}}
 </control-error>

标签: angular

解决方案


as语法仅适用于整个*ngIf表达式。

因此,这是有效的语法:

*ngIf="(createUserError | async) && submitted as userError"

这将隐藏该块或呈现true

但为了使其正确且逻辑正确,您可以更改顺序:

*ngIf="submitted && (createUserError | async) as userError"

这应该会导致userError变量的正确值。


推荐阅读