Angular 为什么我需要后缀“&引用;角度形式的验证属性 名字不能和另一个自我匹配。

Angular 为什么我需要后缀“&引用;角度形式的验证属性 名字不能和另一个自我匹配。,angular,angular-directive,Angular,Angular Directive,这里上面为什么需要后缀?如果heroForm有效heroForm.errors将为null,访问heroForm.errors.identityRevealed将抛出s类型错误,如TypeError:无法读取null的属性'identityRevealed',因此,如果错误属性为空 没有?。操作员 <div *ngIf="heroForm.errors?.identityRevealed && (heroForm.touched || heroForm.dirty)" cl

这里上面为什么需要后缀?如果
heroForm

有效
heroForm.errors
将为null,访问
heroForm.errors.identityRevealed
将抛出s类型错误,如
TypeError:无法读取null的属性'identityRevealed',因此,如果
错误
属性为空

没有
?。
操作员

<div *ngIf="heroForm.errors?.identityRevealed && (heroForm.touched || heroForm.dirty)" class="cross-validation-error-message alert alert-danger">
Name cannot match alter ego.</div>
或者像@JB所说的那样简单

 *ngIf="(heroForm.errors && heroForm.errors.identityRevealed) && ..." 

或更简单:
*ngIf=“heroForm.hasError('identityRevealed')&&…”
@jbnize我已经更新了我的答案,并提到了你所说的,谢谢你。这个问题与这里不同,他问为什么heroForm.errors为空,为什么为空?你需要它吗
 *ngIf="heroForm.hasError('identityRevealed') && ..."