提问人:cucuru 提问时间:1/17/2023 更新时间:1/17/2023 访问量:720
'[Symbol.iterator]()' 方法,返回一个迭代器
'[Symbol.iterator]()' method that returns an iterator
问:
使用严格模式时,我在代码中遇到此错误,并且我没有管理它。
"message": "Type 'MyType<string>[] | undefined' must have a '[Symbol.iterator]()' method
它发生在以下代码行中:
const [optionAll, ...options] = await service.getLineOfBusiness().toPromise();
此服务方法返回 MyType 列表的可观察对象:
public getLineOfBusiness(): Observable<MyType<string>[]>
这个 MyType 是一个非常简单的界面:
export interface MyType<T = unknown> {
key: string;
value: T;
extra?: string;
}
我该如何解决?
答:
1赞
GOTO 0
1/17/2023
#1
MyType<string>[]
可以使用类似数组的语法进行解构,但不能。undefined
如果您确定将始终返回此特定用法(而不是)的数组,则可以将非空断言 () 添加到等待的表达式中以抑制错误:getLineOfBusiness()
undefined
!
const [optionAll, ...options] = (await service.getLineOfBusiness().toPromise())!;
评论