ページネーション

Altium 365 API は、Relay connection specification に従ったカーソルベースのページネーションを使用します。コレクション クエリは、ノードのリスト、ページネーション メタデータ、および結果を前後に移動するためのカーソルを含む connection 型を返します。

Connection Structure

ページ分割されたレスポンスは、次の形になります。

query {
  someCollection {
    nodes {        # このページの項目
      ...
    }
    pageInfo {     # ページネーション メタデータ
      hasNextPage
      hasPreviousPage
      startCursor
      endCursor
    }
    totalCount     # 項目の総数(全ページ)
  }
}

Fetching Pages

first 引数と after 引数を使用して、コレクションを順方向にページ取得します。

query {
  desProjects(first: 20, after: "{cursor}") {
    nodes {
      id
      name
    }
    pageInfo {
      hasNextPage
      endCursor
    }
  }
}
  • first – 返す項目数(ページ サイズ)

  • after – 前のページの末尾を示すカーソル。最初のリクエストでは省略します

endCursorpageInfo は、次のページの after の値になります。hasNextPagefalse になるまで続けてください。

逆方向にページ取得するには、lastbeforestartCursor とともに使用します。

First Request

最初のページでは、after 引数を省略します。

query {
  desProjects(first: 20) {
    nodes {
      id
      name
      updatedAt
    }
    pageInfo {
      hasNextPage
      endCursor
    }
    totalCount
  }
}

ページネーションを開始する前に、totalCount を使用して想定されるページ数を判断できます。

Counting Without Fetching Items

合計件数だけが必要な場合は、nodes を完全に省略できます。

query {
  desProjects {
    totalCount
  }
}

 

AI-LocalizedAI で翻訳
問題が見つかった場合、文字/画像を選択し、Ctrl + Enter キーを押してフィードバックをお送りください。
Content