Paginação

A API do Altium 365 usa paginação baseada em cursor, seguindo a especificação de conexão Relay. As consultas de coleção retornam um tipo connection que contém uma lista de nós, metadados de paginação e cursores para navegar para frente ou para trás pelos resultados.

Estrutura da Conexão

Uma resposta paginada tem o seguinte formato:

query {
  someCollection {
    nodes {        # os itens desta página
      ...
    }
    pageInfo {     # metadados da paginação
      hasNextPage
      hasPreviousPage
      startCursor
      endCursor
    }
    totalCount     # número total de itens (todas as páginas)
  }
}

Buscando Páginas

Use os argumentos first e after para paginar uma coleção para frente:

query {
  desProjects(first: 20, after: "{cursor}") {
    nodes {
      id
      name
    }
    pageInfo {
      hasNextPage
      endCursor
    }
  }
}
  • first – número de itens a retornar (tamanho da página)

  • after – cursor que marca o fim da página anterior; omita na primeira solicitação

O endCursor de pageInfo torna-se o valor de after para a próxima página. Continue até que hasNextPage seja false.

Para paginar para trás, use last e before com startCursor.

Primeira Solicitação

Para a primeira página, omita o argumento after:

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

Use totalCount para determinar quantas páginas esperar antes de começar a paginar.

Contagem sem Buscar Itens

Se você só precisa da contagem total, pode omitir nodes completamente:

query {
  desProjects {
    totalCount
  }
}

 

AI-LocalizedLocalizado por IA
Caso encontre um problema, selecione o texto/imagem e primaCtrl + Enterpara nos enviar o seu feedback.
Conteúdo