2017-02-21 59 views
6

我想问一下,我怎样才能限制我的.map循环,例如只有5个项目,因为目前当我访问api时,它会返回20个项目。但我只想显示5.我发现的大多数情况是循环遍历整个对象数组,而不是将其限制为多个项目。在.map循环中限制项目

注:我对API无法控制,因为我只是用moviedb API

这里是我的代码:

var film = this.props.data.map((item) => { 
       return <FilmItem key={item.id} film={item} /> 
      }); 

      return film; 

回答

15

你可以使用Array#slice并且只需要您需要的元素。

var film = this.props.data.slice(0, 5).map((item) => { 
     return <FilmItem key={item.id} film={item} /> 
    }); 

return film; 

如果不啃老族原始数组了,你可以用塞汀长度5变异数组和循环即可。

+0

我虽然没有切片会做这项工作。谢啦! –

+0

这样一个优雅和简单的方法!不认为slice()可以在这里调用!非常感谢 :-) –