类型“ IterableIterator <[number,any]>”不是数组类型或字符串类型

时间:2019-11-29 13:11:48

标签: typescript ionic4

我正在使用Ionic 4来构建应用程序。尽管我的应用在浏览器上运行良好,但是当我构建android平台时却出现了此行错误

for (let [index, p] of this.cart.entries())

我的打字稿版本是3.7.2

错误是

  

类型'IterableIterator <[number,any]>'不是数组类型或   字符串类型。使用编译器选项'--downlevelIteration'可以迭代迭代器。

2 个答案:

答案 0 :(得分:1)

我遇到了类似的问题,地图和循环以错误告终

public lastviewed = new Map<string, object>();

for (const [key, value] of this.lastviewed.entries()) { //didnt work
    console.log(" Key : ", key, " Val : ", value);
}

导致错误:类型 'IterableIterator<[string, object]>' 不是数组类型或字符串类型。使用编译器选项“--downlevelIteration” Intead 在 tsconfig 中更改,我将循环从 entries 更改为 forEach 并且它对我有用

    this.lastviewed.forEach((value: object, key: string) => {//worked
        console.log("PRINTING : ", key, value);
    });

感谢 thefourtheye 的回答

答案 1 :(得分:0)

我通过在tsconfig.josn文件内的editorOptions中添加“ downlevelIteration”:true来解决该问题。请注意,我的目标是es2015