【问题标题】:TS (7015) Error: Element implicitly has an 'any' type because index expression is not of type 'number'TS(7015)错误:元素隐式具有“任何”类型,因为索引表达式不是“数字”类型
【发布时间】:2022-06-12 16:47:17
【问题描述】:

在 Angular 项目中,代码 movie.service.ts 中的以下脚本导致错误 ts(7015) 元素隐式具有“任意”类型,因为索引表达式不是“数字”类型。

有什么想法吗?

【问题讨论】:

  • Movie[]Movies 的数组。它没有"Search"
  • Movie[] 是一个数组,但您正在访问属性Search

标签: angular typescript


【解决方案1】:

您可能将map rxjs 函数与map 数组方法混淆了。

rxjs 中的 map 函数映射从可观察对象发出的每个值。如果您希望从 observable 发出的每个值都映射到一个属性,您需要使用Array.prototype.map

map(res => res.map(item => item.Search))

【讨论】:

  • 支持文本指出“API 结果被包装在结果对象的数组“搜索”中。结果必须在服务中展开。 map() 方法将在服务的管道中用于此目的。
  • 我想你说的是内部 API,你不应该在这里搜索帮助 :)
  • 不,它是一个外部 API:omdbapi.com 我们用于测试和学习 Angular。我发现 module.ts 文件没有正确更新。更新后 - 应用程序正常工作。
【解决方案2】:

我发现 module.ts 文件没有正确更新。更新后 - 应用程序正常工作。

【讨论】:

    猜你喜欢
    • 2021-08-01
    • 2023-02-15
    • 2023-04-01
    • 2022-01-22
    • 2018-04-25
    • 2021-10-11
    • 2017-03-14
    • 2016-07-23
    • 1970-01-01
    相关资源
    最近更新 更多