lundi 6 mai 2019

TypeError: folhas.forEach is not a function typescript

Eu estou tentando exibir os dados de alguns estagiários utilizando uma biblioteca de cards feita por outro desenvolvedor. A aplicação foi toda feita em Angular (inclusive a lib). Há algumas semanas atrás, estava tudo funcionando, mas, recentemente, fui testar a aplicação e aparece um erro no TypeScript.

Tenho essa função que monta os cards na tela:

// Monta a visualização dos cards
  folhaDePagamentoEstagiariosToItemCard(folhas) {
    const dados: any[] = [];

    // Pipe para a formatação da moeda
    const pipe = new CurrencyPipe('pt');

    folhas.forEach(dado => {
      const item: ItemCard = new ItemCard();
      item.cabecalho = dado.Nome;
      item.subtitulo = 'Lotação: ' + dado.Lotacao;
      item.resumo = <string>this.sanitizer.bypassSecurityTrustHtml(
        '<table>' +
        '<tr><th>Estabelecimento:</th><td>' + dado.Estabelecimento + '</td></tr>' +
        '<tr><th>Início do Contrato:</th><td>  ' + dado.Inicio + '</td></tr>' +
        '<tr><th>Término do Contrato:</th><td> ' + dado.Termino + '</td></tr>' +
        '<tr><th>Bolsa Auxílio:</th><td>' + pipe.transform(dado.Proventos, 'R$')  + '</td></tr>' +
        '</table>');
      dados.push(item);
    });
    return dados;
  }

O resumo do card é onde aparecem os dados dos estagiários. É uma tabela que usa o padrão que foi definido na lib que estou usando.

Mas recebo o seguinte erro no console do navegador:

core.js:14597 ERROR TypeError: folhas.forEach is not a function
    at EstagiariosComponent.push../src/app/estagiarios/estagiarios.component.ts.EstagiariosComponent.folhaDePagamentoEstagiariosToItemCard (estagiarios.component.ts:62)
    at SafeSubscriber._next (estagiarios.component.ts:51)
    at SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.__tryOrUnsub (Subscriber.js:196)
    at SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next (Subscriber.js:134)
    at Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._next (Subscriber.js:77)
    at Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next (Subscriber.js:54)
    at MapSubscriber.push../node_modules/rxjs/_esm5/internal/operators/map.js.MapSubscriber._next (map.js:41)
    at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next (Subscriber.js:54)
    at FilterSubscriber.push../node_modules/rxjs/_esm5/internal/operators/filter.js.FilterSubscriber._next (filter.js:38)
    at FilterSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next (Subscriber.js:54)

Antes a função forEach estava funcionando. Agora estou com esse problema. Fico grato caso alguém possa me ajudar!




Aucun commentaire:

Enregistrer un commentaire