Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从API数组过滤图像_Javascript - Fatal编程技术网

Javascript 从API数组过滤图像

Javascript 从API数组过滤图像,javascript,Javascript,我正在尝试从该API调用中仅检索图像媒体类型。我编写的代码返回一个空数组。我知道这是过滤器中的一个错误,但我似乎无法找出它。有什么想法吗 来自API的数据: 从我编写的代码返回的空数组: 从“axios”导入axios; const getImages=(查询)=>{ 如果(!查询){ 返回承诺。解决([])) }否则{ 返回轴 .得到(`https://images-api.nasa.gov/search?q=${query}`) 。然后((响应)=>{ console.log(resp

我正在尝试从该API调用中仅检索图像媒体类型。我编写的代码返回一个空数组。我知道这是过滤器中的一个错误,但我似乎无法找出它。有什么想法吗

来自API的数据:

从我编写的代码返回的空数组:

从“axios”导入axios;
const getImages=(查询)=>{
如果(!查询){
返回承诺。解决([]))
}否则{
返回轴
.得到(`https://images-api.nasa.gov/search?q=${query}`)
。然后((响应)=>{
console.log(response.data.collection.items)
让imageResults=response.data.collection.items
让parsedImages=imageResults.filter(i=>imageResults[0]。媒体类型==“图像”)
console.log(parsedImages)
返回解析图像
})
.catch((错误)=>{
控制台日志(err);
});
}
}

导出默认图像您没有获得正确的属性。
media\u type
处于
response.data.collection.items[\u].data[\u].media\u type

以下是一个有效的筛选器:

let images = data.collection.items.filter(i => i.data.filter(d => d.media_type == 'image').length > 0)

您应该使用
i[0]。媒体类型
not
imageResults[0]。媒体类型