Ng-table: getData () não obtém um parâmetro $ defer

Criado em 12 ago. 2016  ·  3Comentários  ·  Fonte: esvit/ng-table

Oi, pessoal,

Estou tentando preencher minha tabela de dentro de uma chamada .then() de uma promessa retornada por um serviço separado, por exemplo:

function populateTable() {
  MyService.retrieve()
    .then( (response) => {
      vm.myTableData = new NgTableParams({
        count: 10,
        page: 1
      }, {
        total: response.length,
        getData: ($defer, params) => {
          // some other stuff, further filtering etc.
          params.total(response.length);
          $defer.resolve(response);
        }
      });
    })
    .catch($log.log);
}

Ele me diz que: $defer.resolve is not a function .
E se eu consolar os argumentos $defer e params , descubro que params é indefinido e $defer é o valor real de params deve ser.
Em outras palavras, getData é executado com apenas um argumento e esse é o argumento de parâmetros.

Então, tento usar apenas params e retornar minha resposta de forma síncrona, ou seja:

total: response.length,
getData: (params => {
  params.total(response.length);
  return response;
}

E isso retorna meus dados sem erros, mas agora a paginação não funciona (recebo os botões, mas eles não fazem nada e a página é apenas meu conjunto de dados inteiro).

Então ... estou perdido. Toda a documentação e exemplos online dizem que eu deveria usar $defer , mas por que então não estaria disponível?

Alguma ideia?

Comentários muito úteis

Espero gerar um documento de API a partir das definições de texto digitalizado.

Nesse ínterim, o wiki deve ser excluído em minha opinião. Dessa forma, o único lugar que alguém vai olhar é o site oficial de exemplos

Todos 3 comentários

O problema aqui é que o wiki aqui está desatualizado - está documentando uma versão antiga do ng-table.

Dê uma olhada nos exemplos para documentos mais atualizados.

Verifique também o CHANGELOG.md, pois ele detalha as mudanças importantes que aconteceram no último ano.

Ah ok. Isso é terrivelmente confuso quando alguém está apenas tentando implementá-lo pela primeira vez e não está observando de perto os logs de alterações. Os documentos serão atualizados em breve?

Espero gerar um documento de API a partir das definições de texto digitalizado.

Nesse ínterim, o wiki deve ser excluído em minha opinião. Dessa forma, o único lugar que alguém vai olhar é o site oficial de exemplos

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

zeeshanhanif picture zeeshanhanif  ·  5Comentários

raul1991 picture raul1991  ·  6Comentários

zymr-keshav picture zymr-keshav  ·  10Comentários

ghost picture ghost  ·  30Comentários

richtmat picture richtmat  ·  7Comentários