You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Next.js中urql+Strapi GraphQL传limit参数报错求助

解决Strapi GraphQL查询中limit参数报错问题

错误原因

Strapi的GraphQL API设计中,posts根字段并不直接接收limit作为顶层参数,分页相关参数(包括limit、start等)需要嵌套在pagination对象中传递。

修正后的代码示例

带变量的查询语句

const GET_RECENT_POSTS_QUERY = `
query ($limit: Int!){
  posts (sort: "publishedAt:DESC", pagination: { limit: $limit }) {
    data {
      attributes {
        publishedAt
        title
      }
    }
  }
}
`

组件使用部分

import { useQuery } from 'urql'

export default function Example() {
  const [res] = useQuery({
    query: GET_RECENT_POSTS_QUERY,
    variables: { limit: 3 },
  })

  return (
    <div>
      <h3>Recent Posts</h3>
      <div>{JSON.stringify(res)}</div>
    </div>
  )
}

补充说明

如果需要同时设置起始偏移量(比如跳过前N条数据),可以在pagination中添加start参数:

query ($limit: Int!, $start: Int!){
  posts (
    sort: "publishedAt:DESC", 
    pagination: { limit: $limit, start: $start }
  ) {
    data {
      attributes {
        publishedAt
        title
      }
    }
    meta {
      pagination {
        total
        page
        pageSize
        pageCount
      }
    }
  }
}

同时在变量中传递start: 0(或其他数值),并且可以通过meta.pagination获取分页元数据,方便实现完整分页功能。

内容的提问来源于stack exchange,提问作者abgregs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 11:05:39