今天我做开发时遇到如下的 TypeScript 错误:
Type 'Observable<boolean | undefined>' is not assignable to type 'Observable<boolean>'.
Type 'boolean | undefined' is not assignable to type 'boolean'.
Type 'undefined' is not assignable to type 'boolean'.ts(2322)


原因是参与 combineLatest 的第三个参数,StateUtils.LoaderState<void>:

它的类型可能为 undefined,原因是这几个属性都是 optional 的:

解决方案
使用 TypeScript 的空值合并操作符,即双问号语法:


问题解决。
更多Jerry的原创文章,尽在:"汪子熙":

网友评论