首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Map.prototype.forEach不存在Angular 6项目

Map.prototype.forEach不存在Angular 6项目
EN

Stack Overflow用户
提问于 2018-10-09 02:31:43
回答 1查看 188关注 0票数 -1

我试图从Http响应中获取一个对象,并将其转换为JavaScript中的C#。我搞不懂为什么我不能使用Map.prototype.forEach。它一直告诉我它不存在。根据Map.prototype.forEach的MDN,它首先是在ES2015中引入的。我在tsconfig的lib部分包含了ES2015、ES2015.collection和ES2015.iterable。我认为这就足够了,但它似乎根本不起作用。我是不是漏掉了什么?

下面是我的tsconfig文件:

代码语言:javascript
复制
{
  "compileOnSave": false,
  "compilerOptions": {
    "target": "es5",
    "module": "es2015",
    "lib": [
      "es5",
      "es2015",
      "es2015.collection",
      "es2015.iterable",
      "es2016",
      "es2017",
      "dom"
    ],
    "allowJs": false,
    "checkJs": false,
    "sourceMap": true,
    "declaration": false,
    "downlevelIteration": true,
    "outDir": "./dist/out-tsc",
    "alwaysStrict": true,
    "moduleResolution": "node",
    "baseUrl": "./",
    "typeRoots": [
      "node_modules/@types"
    ],
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
  }
}

我正在尝试使用的代码:

代码语言:javascript
复制
myMap: Map<number, Array<number>> = new Map<number, Array<number>>();
this.myMap.forEach((value: Array<number>) => {  /* ERROR HERE */
  console.log(value);
})

这里是地图接口的相关文件,这里是相关代码Map interface

以下是关于该项目的一些信息:

Angular v6.0.4

Angular CLI v6.0.8

Typescript v2.7.2

EN

回答 1

Stack Overflow用户

发布于 2018-10-09 03:33:15

该问题源于试图在Http响应中获取C#字典对象并将其键入为映射。这本身就不起作用。返回的响应是一个泛型JavaScript对象{ K: number,V: number[] },即使我将其键入为映射。显然,一个对象没有forEach函数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52708185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档