繁体   English   中英

ionic2中带有JSON数据的TypeError

[英]TypeError with JSON data in ionic2

我有一个关于在过滤JSON数据中的特定变量时如何避免打字稿中出现错误的问题。 我的JSON数据的一部分如下所示:

带有多媒体内容:

"per_facet": [],
"geo_facet": [],
"multimedia": [
{
"url": "https://static01.nyt.com/images/2016/09/07/world/06NYTNow-Obama2/06NYTNow-Obama2-thumbStandard-v2.jpg",
"format": "Standard Thumbnail"
},
{
"url": "https://static01.nyt.com/images/2016/09/07/world/06NYTNow-Obama2/06NYTNow-Obama2-thumbLarge-v2.jpg",
"format": "thumbLarge",
}]

没有多媒体内容的另一个元素:

"per_facet": [],
"geo_facet": [],
"multimedia": [],

如您所见,数组中的“ multimedia”变量在数组中的一个元素上具有内部值,而在另一个元素中则没有。

这就是我尝试检索该参数(是图像)的方式。

<img [src]= "item.multimedia[0].url" *ngIf="item.multimedia[0].url.indexOf('http') === 0">

当我尝试读取多媒体数组的url参数时,会导致错误ERR:“无法读取未定义的URL”。 (由于没有数据可显示,因此完全可以理解。)这适用于Javascript。 我不知道如何解决这个问题。

如何避免此错误并从此数组成功检索其他参数。

提前致谢。 苏雷什

与其尝试直接访问该字段,不如先检查它是否包含该项目。

你可以做

item.multimedia[0] && item.multimedia[0].url.indexOf('http') === 0

要么

item.multimedia.length > 0 && item.multimedia[0].url.indexOf('http') === 0

我看不到您的整个代码,因此可能会出错,但是通常我建议您做一些不涉及单个索引的操作,这可能非常脆弱。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM