3
respostas

Retorno Undefined do Get?

Não consigo listar os dados na minha Grid, pois o retorno sempre cai no undefined, Estou utilizando o método de um serviço o "getAll()" , o que pode ser?

export class ParametroComponent implements OnInit { 
  parametros: IParametro[] = [];
  modulo: string

  salvando: boolean

  service: GenericService<IParametro>

  constructor(private serviceFactory: GenericServiceFactory, private toastr: ToastsManager) {
    this.modulo = localStorage.getItem('currentModule')
    this.service = serviceFactory.createHttpServiceFor<IParametro>('parametro')
}

  ngOnInit(): void {
    this.getAllParametros();
  }

  getAllParametros(){
    this.service.getAll()
    .subscribe(res => {
        this.parametros = res;
        console.log(this.parametros);
    });
  }
}

Esse é o service:

getAll(): Observable<T[]> {
        const url = `v1/${this.resource}?page=1&limit=99999&somenteAtivos=false&search=&sort=`;

        console.log(this.http);
        return this.http.get(url)
            .map(res => <T[]>res.json().data)
            .catch((error: any) => Observable.throw(this.handleError(error)));
    }
3 respostas

Alguém poderia me ajudar a solucionar o que esta vindo como undefined? meu array ao que parece não esta vindo com conteúdo algum :|

Fala Rafael tudo bom?

Tenta retornar só o .map() sem o .catch((error: any) => Observable.throw(this.handleError(error))); e me da um sinal do resultado :)

O ideal seria você tratar o erro quando a resposta chega onde você vai usar o retorno.

Bom dia, Creio que não faria diferença nenhuma eu tirar o .catch, alias o problema é outro, o porque meu parametros esta vindo como um array vazio e não esta sendo preenchido com as informações, testei minha url e ela me retorna o json com todos os registros, porém o grid não popula os registros nele, pois sempre me é retornado undefined :|