如何使用 Apollo 和 Graphql 按发布日期(最新的在前)查询我的数据?

How can I query my data by published date (newest first) using Apollo and Graphql?

我有一个通过 Graphql 获取数据的 React 页面。 我使用 Strapi 作为后端并且已经生成了查询。 我像这样在前端查询我的数据

query GetData{
  datas(limit:3){
    id
    published_at
  }
}

在文档中,我找到了这个关于如何按特定顺序对查询进行排序的示例

GET /users?_sort=email:ASC,dateField:DESC

但不是很清楚如何将它与查询结构一起使用。 我尝试了类似的方法和其他变体

query GetPodcasts{
  podcasts?_sort=published_at:DESC(limit:3){
    id
    published_at
  }
}

但是没用。

我可能需要一些帮助来理解这一点。

Graphql 就像一个 Rest Api 但有一个端点指向服务器, 此查询名称为 GetData ,指向数据查询,但您应该在后端定义此查询。 请观看一些教程,这些教程将逐步指导您。 你可以在这里了解更多关于 graphql 的信息 https://graphql.org/learn/

试试这个:

query GetData{
  datas(input:{
    sort:{id:"asc"},
    data:{limit:3}
    }){
    id
    published_at
  }
}

了解更多信息 https://strapi.io/documentation/developer-docs/latest/development/plugins/graphql.html#query-api

论坛里也有好心人给了我答案。 在前端使用 graphql 时,想要对数据进行排序或过滤,只需使用 "" 指定排序或过滤即可。 在我的例子中,它必须是:

query GetData{
  datas(limit:3, sort:"published_at:desc"){
    id
    published_at
  }
}