首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Internet Explorer 11在Post请求中向Typescript Map添加值

Internet Explorer 11在Post请求中向Typescript Map添加值
EN

Stack Overflow用户
提问于 2019-01-18 20:25:57
回答 2查看 666关注 0票数 2

我正在做一个带有Angular前端和Java后端的小型私人项目,最近我发现它有一些奇怪的IE11行为(我知道IE11很可怕,不应该与Angular项目一起使用)。有一次,我向我的后端服务器发送了一个带有地图有效负载的帖子,我知道IE11对TS地图的支持只是部分的。我从后端接收地图没有问题,但当我发送地图时,我得到一个反联盟错误:

代码语言:javascript
复制
ERROR Can not deserialize Map key of type [...] from String "_t": not a valid representation[...]

后端希望Map的键是Enum的名称。我知道这个错误告诉我,他无法将_t映射到枚举的值,这并不奇怪,因为枚举不包含该值。

奇怪的是,我没有在映射中放入带有_t的键/值对。Firefox/Chrome不会出现此问题。做了一些调试,发现IE11似乎向映射中添加了一些键/值对。

代码语言:javascript
复制
  mapName: {
     [functions]: ,
     __proto__: { },
     _f: undefined,
     _i: { },
     _l: undefined,
     _s: 0,
     _t: "Map",
     size: 0,
     CAT: 4
  },

我添加到地图中的唯一东西是CAT: 4

令人惊讶的是,我没有找到关于这个问题的参考资料。有没有解决这个问题的办法?除了将这些值添加到后端枚举并忽略它们?

EN

回答 2

Stack Overflow用户

发布于 2019-12-24 03:31:00

为了解决这个问题,我不再使用map,而是使用类型化的字典:

代码语言:javascript
复制
controllerProperty: {[keyOrWhatever:string]: string}
票数 0
EN

Stack Overflow用户

发布于 2019-01-31 08:30:48

您可以尝试执行以下定义来替换您的新map()。

var mapName={ CAT: 4};

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

https://stackoverflow.com/questions/54254007

复制
相关文章

相似问题

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