【发布时间】:2020-05-06 11:57:36
【问题描述】:
使用tsconfig.json 中的"strictNullChecks": true,当我使用异步管道测试订阅到已初始化的 Observable 的同步值时,我收到 TS2531 错误(对象可能为“null”):
import {Component} from '@angular/core';
import {Observable, of} from 'rxjs';
@Component({
selector: 'app-root',
template: `
<div *ngIf="(test$|async) === 0">Zero</div>
<div *ngIf="(test$|async) > 0">Positive</div>
`,
styles: []
})
export class AppComponent {
test$: Observable<number> = of<number>(1);
}
有人明白为什么吗?
【问题讨论】:
-
使用 Observable,它将确定结果可能为空。调用 API 也一样,有些情况下 API 返回 null 值。
-
@HienNguyen observables 可以有明确的不可为空的类型。异步管道可能会返回 null。
标签: angular typescript