我正在尝试执行以下操作,但是我在第二个for循环中的monthData下遇到语法错误。
Observable.forkJoin(observableArray)
.subscribe(monthArray => {
console.log(monthArray)
for (let monthData of monthArray) {
for (let dataEntry of monthData) {
// do somehting with dataEntry which is an object
}
}
}
抱怨
type {}不是数组类型或字符串类型
所以当我将鼠标悬停在monthArray上时,它的类型是{} []。
但是,我100%确定返回的monthArray是类型数组的数组,如图所示
有没有办法将monthArray从{} []转换为
Array<Array<any>>>
答案 0 :(得分:0)
我很惊讶这里的类型是错误的,RXJS5在设计时考虑到了TypeScript,并且通常具有非常好的类型。尽管如此,你应该能够在你的情况下做这样的事情:
Observable.forkJoin(observableArray)
.subscribe(arr => {
const monthArray = arr as Array<Array<any>>;
for (let monthData of monthArray) {
for (let dataEntry of monthData) {
// do somehting with dataEntry which is an object
}
}
}
如果您有兴趣了解更多信息,请查看this nice writeup on type assertions。