如何显示盖茨比即将举行的活动的列表?

时间:2018-12-17 20:29:13

标签: graphql gatsby

我有一个针对事件的降价文件集合,其中前题字段“ date”设置为事件的日期。

我不知道如何使用graphql来查询将来具有日期限制3的事件。如果不能使用graphql完成,该怎么办?

    {
      allMarkdownRemark(
        sort: {order: DESC, fields: [frontmatter___date]},
        filter: {frontmatter: {layout: {eq: "Event"}}},
        limit: 3) 
        {
          edges {
            node {
              id
              fields {
                slug
              }
              frontmatter {
                title
                layout
                date
              }
            }
          }
        }
    }

1 个答案:

答案 0 :(得分:1)

在GraphQL查询完所有帖子后,您可以进行过滤:

const Posts = edges
    .filter( edgeItem => edgeItem.node.frontmatter.date > Date.now())
    .map(({ node }) => <PostItem key={node.id} node={node} /> )

如果日期存储为字符串,请先将其转换以进行比较。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date