如何将数组过滤为一组响应

问题描述 投票:0回答:1

我正在创建一款社交媒体应用程序,允许用户互相关注。我意识到它现在正在返回数千条被关注的人的帖子。我只想返回最后十篇帖子。我假设有某种过滤方法只允许渲染最后 10 个帖子(不进行切片)。

 useEffect(() => {
    if (props.following.length !== 0) {
      const feed = [...props.feed]
        .filter(({ user }) => props.following?.includes(user?.uid))
        .sort((x, y) => y.creation - x.creation);

      
      setPosts(feed);
    }
  }, [JSON.stringify(props.following), JSON.stringify(props.feed)]);
javascript arrays sorting
1个回答
0
投票

要仅返回 feed 数组中的最后 10 个帖子,您可以使用 slice 方法:

setPosts(feed.slice(0, 10));

这将创建一个包含提要的前十个元素的新数组。

© www.soinside.com 2019 - 2024. All rights reserved.