API Paginator - iOS

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 3 min. de leitura
  • . Paginador a classe fornece métodos para iterar por meio de um conjunto de registros retornado por uma chamada para ServiceNow Tabela NowTableService. É o objeto retornado pelo NowTableService paginador() métodos. Não chame este método fora desse ambiente.

    Tabela 1. Propriedades
    Nome Tipo Descrição
    hasNext Booliano Sinalizador que indica se há uma próxima página a ser buscada.
    Valores válidos:
    • Verdadeiro: A próxima página está disponível.
    • Falso: A próxima página não está disponível.
    TemAnterior Booliano Sinalizador que indica se há uma página anterior a ser buscada.
    Valores válidos:
    • Verdadeiro: A página anterior está disponível.
    • Falso: A página anterior não está disponível.
    É Busy Booliano Sinalizador que indica se o objeto Paginator está ocupado buscando dados.
    Valores válidos:
    • Verdadeiro: O fornecedor está ocupado.
    • Falso: O fornecedor não está ocupado.
    ÉFinalizado Booliano Sinalizador que indica se o objeto Paginator está concluído. Quando o paginador é configurado para concluir, o fornecedor do objeto Paginator termina quando a última página é buscada. Um objeto Paginator não pode buscar páginas depois de concluído. Para obter informações adicionais, consulte a descrição do publisherShouldFinishparâmetro.
    Valores válidos:
    • Verdadeiro: O fornecedor está concluído.
    • Falso: O fornecedor não terminou.
    ItemPerPage Inteiro Número de itens a serem obtidos por página.

    Padrão: 20

    NumberOfPáginas Inteiro Número total de páginas no conjunto de registros.

    Se o objeto Paginator ainda não tiver obtido páginas, este parâmetro será definido como Máx . Depois que uma solicitação inicial foi feita para ServiceNow instância, o número de páginas é atualizado para o número real de páginas recebidas do ServiceNow instância.

    página Inteiro Página atual no conjunto de registros paginado.
    fornecedor Cadeia de caracteres Fornecedor que fornece o fluxo de dados paginados aos assinantes.
    Nota:
    Por padrão, o fornecedor não termina. Para mudar esse comportamento, defina publisherShouldFinishpropriedade para verdadeiro .
    PublicadoEncerrar Booliano Sinalizador que indica se o fornecedor do objeto Paginator deve ser interrompido quando a última página for obtida. Um objeto Paginator não pode buscar páginas depois de concluído.
    Valores válidos:
    • Verdadeiro: Depois que a última página é buscada, o fornecedor é liberado de fornecer dados adicionais. . redefinir() o método não está mais funcional.
    • Falso: O fornecedor nunca está concluído e todos os métodos estão totalmente operacionais, independentemente da navegação.

    Padrão: falso

    Paginator - First() lança

    Busca a primeira página dos resultados retornados.

    Se este método não puder buscar a primeira página, ele lançará um PaginationError .

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 3. Retorna
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    class PaginatorTestViewModel<T: JSONRepresentable>: ObservableObject {
      @Published var result: Result<String, Error>?
      private let paginator: Paginator<T>
      private var subscriptions = Set<AnyCancellable>()
    
      init(paginator: Paginator<T>) {
        self.paginator = paginator
        subscribeToPaginator()
      }
    
      private func subscribeToPaginator() {
        paginator.publisher
          .receive(on: DispatchQueue.main)
          .sink { [weak self] comp in
            if case .failure(let error) = comp {
              self?.result = .failure(error)
            }
          } receiveValue: { [weak self] jsonRepresentable in
            self?.result = .success(jsonRepresentable.jsonDescription)
          }
          .store(in: &subscriptions)
      }
    
      func first() {
        result = nil
        do {
          try paginator.first()
        } catch {
          self.result = .failure(error)
        }
      }
    }

    Paginator - lança last()

    Busca a última página dos resultados retornados.

    Se este método não puder buscar a última página, ele lançará um PaginationError .

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 5. Retorna
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    …
    func last() {
      result = nil
      do {
        try paginator.last()
      } catch {
        self.result = .failure(error)
      }
    }
    …

    Paginator - lança next()

    Busca a próxima página dos resultados retornados.

    Se não houver mais páginas para buscar, o método lançará um PaginationError .

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 7. Retorna
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    …
    func next() {
      result = nil
      do {
        try paginator.next()
      } catch {
        self.result = .failure(error)
      }
    }
    …

    Paginator - Lançamentos anteriores ()

    Busca a página anterior dos resultados retornados.

    Se o método não puder buscar a página anterior, ele lançará um PaginationError .

    Tabela 8. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 9. Retorna
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    …
    func previous() {
      result = nil
      do {
        try paginator.previous()
      } catch {
        self.result = .failure(error)
      }
    }
    …

    Paginator - reset()

    Redefine o Paginador de volta para a primeira página, mas não retorna a primeira página dos resultados retornados.

    Tabela 10. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 11. Retorna
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    …
    func reset() {
      result = nil
      paginator.reset()
    }
    …