*ngIf 在 TypeScript 代码中等效
*ngIf equivalent in TypeScript code
如何检查组件 属性 在 TypeScript 代码中是否未定义,例如在方法中?
在 .html 组件模板中,可以执行此类检查作为显示 html 元素的条件。避免在它们不存在或尚未初始化时显示。
<div *ngIf="exampleComponentProperty"></div>
是否可以在 .ts 中进行相同的检查?那么表达式会怎样?
if (this.exampleComponentProperty != null) {
// some code...
}
似乎没有用。
你可以简单地写
if (this.exampleComponentProperty) {
// some code...
}
或者
if (this.exampleComponentProperty != undefined) {
// some code...
}
如果此 属性 是显示此组件所必需的,您应该将其加载到解析器中。
https://angular.io/guide/router#resolve-pre-fetching-component-data
您可以尝试避免所有可能性的条件:
在 TS 中:
if (this.exampleComponentProperty && this.exampleComponentProperty != undefined && this.exampleComponentProperty != null) {
// write code...
}
在HTML中:
<div *ngIf="exampleComponentProperty && exampleComponentProperty != undefined && exampleComponentProperty != null"></div>
如何检查组件 属性 在 TypeScript 代码中是否未定义,例如在方法中?
在 .html 组件模板中,可以执行此类检查作为显示 html 元素的条件。避免在它们不存在或尚未初始化时显示。
<div *ngIf="exampleComponentProperty"></div>
是否可以在 .ts 中进行相同的检查?那么表达式会怎样?
if (this.exampleComponentProperty != null) {
// some code...
}
似乎没有用。
你可以简单地写
if (this.exampleComponentProperty) {
// some code...
}
或者
if (this.exampleComponentProperty != undefined) {
// some code...
}
如果此 属性 是显示此组件所必需的,您应该将其加载到解析器中。 https://angular.io/guide/router#resolve-pre-fetching-component-data
您可以尝试避免所有可能性的条件:
在 TS 中:
if (this.exampleComponentProperty && this.exampleComponentProperty != undefined && this.exampleComponentProperty != null) {
// write code...
}
在HTML中:
<div *ngIf="exampleComponentProperty && exampleComponentProperty != undefined && exampleComponentProperty != null"></div>