我是一名使用Angular 4创建前端的开发者,遇到了一个奇怪的错误。每当我运行以下代码时:
private createProductTree(productData: Map<number, any>): Map<number, Node> {
const productTree = new Map<number, Node>();
// Iterate over menu-item objects.
for (let key of productData.keys()) {
const product = productData.get(key);
if (product.type === 'menu-item') {
const node = new Node(product);
productTree.set(key, node);
}
}
return productTree;
}
我遇到了以下错误:
Type 'IterableIterator<number>' is not an array type or a string type.
,出现在for (... of ...)
这一行。我不确定我做错了什么。这个
for
循环的代码和我在这里看到的代码是一样的。
keys()
,就不需要使用for..of
。forEach
将是更好的选择。 - Max Koretskyi