用javascript从api映射第一个对象



我通过映射阵列

moviesList.map(movie => <MovieCard movieID={movie} key={movie} 

但我的API有时会给出一个或多个结果。如何更改我的.map以仅显示第一个结果?

试试这个

[moviesList[0]].map(movie => <MovieCard movieID={movie} key={movie} 

首先,如果[0]是一个对象,那么编写moviesList[0].map会导致循环崩溃,因为它不可迭代。所以你基本上需要去掉除第一个以外的所有对象。你可以用slice((来做。这里,slice(0,1(的意思是"获取数组中从0到1的所有元素"。因此,只有第一个物体会幸存下来。然后你的map((会像符咒一样工作。此外,关键是从map((获得的一个基本数字"i",这比传递整个对象要好。如果您想对键使用object属性,请使用movie.id之类的东西,而不是整个movies。

moviesList.slice(0,1).map((movie,i)=> <<MovieCard movieID={movie} key={i}/>)

试试这个,

moviesList[0].map(movie=><MovieCard movieID={movie} key={movie}/> )

或者如果你只想展示一个。试试这个,

<MovieCard movieID={moviesList[0]} key={moviesList[0]}/>

最新更新