在我的 Angular 应用程序中,我创建了一个显示一些数据的控件。
我有一个“className”类,它的一个字段 (ShowDetails) 被声明为 bool 值,因此如果用户单击一个按钮,我将设置 ShowDetails = true
并显示一个包含信息的 div。
@Input() className: ClassName;
...
ShowDetails($event){
this.className.ShowDetails = true;
}
...
<app-details-info *ngIf="className.ShowDetails" (closed)="ClosedDetails($event)" [info]="className">
</app-details-info>
不幸的是它没有工作(并且它没有在控制台上打印任何错误),但是如果我改变
*ngIf="className.ShowDetails"
使用局部 bool 变量工作得很好。
我哪里错了?
最佳答案
尝试使用 ?
运算符:
<app-details-info *ngIf="className?.ShowDetails">
</app-details-info>
?
是模板中的安全导航运算符。此表达式 className?.ShowDetails
等效于 className != null ?类名.ShowDetails : null
关于javascript - 为什么 ngIf 不适用于类属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58833266/