javascript - 无法从 iTunes API 的 JSON 获取对象
问题描述
我正在使用 Angular 构建一个音乐应用程序,而对于我使用 Apple iTunes API 的数据。当我获取 JSON 结果时,我无法获取对象属性。
以下是 itune API 返回的数据:
我可以渲染一些属性,如类别、id、标题等。但无法渲染在其名称之前有im:im:artist
等的属性im:name
。
这就是我在 html 组件中呈现数据的方式:
// This Works
<div *ngFor="let track of tracks">{{track.title.label}}</div>
// This does not work
<div *ngFor="let track of tracks">{{track.im:name.label}}</div>
解决方案
轨道的 json 似乎很糟糕,但您可以通过以下方式实现。
如果您相信总有对象
track.im:name.label
,那么您可以使用以下技巧<div *ngFor="let track of tracks">{{track["im:name"].label}}</div>
另一种方式
<div *ngFor="let track of tracks">{{getLabel(track)}}</div> getLabel(task){ if(task["im:name"] && task["im:name"].label){ return task["im:name"].label } else { return "" } }
推荐阅读
- javascript - Rails + StimulusJS 动态创建的选择菜单不起作用
- r - solnp() 中的 sol$convergence = 1 或 2 是什么意思?
- elasticsearch - Elasticsearch - 嵌套字段排序
- sql - 如何在 Pyspark 中使用 ROW_NUMBER 转换 PARTITION_BY 和 ORDER?
- c++ - 使用 IShellItem2.GetString() 时的内存泄漏
- amazon-web-services - CloudFront、Application LoadBalancer、EC2 获得重定向 301
- python - 如何在 Django 中使用多个数据库 [使用数据库路由器]
- javascript - Discord.js 不能使用“发送”功能来 DM 一个人,因为它是未定义的?
- python - Python,Pandas,DataFrame,添加新列执行 SQL GROUP_CONCAT 等效
- reactjs - 视频反应 - 如何订阅状态变化