1
resposta

Classe NegociacaoService não compila

Estou com o mesmo problema relatado no tópico https://cursos.alura.com.br/forum/topico-meu-codigo-nao-compila-43344, no entanto inseri a sugestão de colocar o Promisse, mas no forEach não compila, alegando que não pode iterar em função com retorno void.

    @throttle()
    importarDados(){

        this._service
            .obterNegociacoes(res => {
                if(res.ok) return res;
                throw new Error(res.statusText);
            })
            .then(negociacoes => {
                negociacoes.forEach(negociacao => 
                    this._negociacoes.adiciona(negociacao));
                this._negociacoesView.update(this._negociacoes);
            });
    }

Tentei deixar o Promisse, atualizando o vscode e o typescritp, mas sem sucesso. Gostaria de uma sugestão para sanar o erro no forEach.

1 resposta

Oi Fabrício, já que não pode iterar sobre algo que não tem retorno, que tal utilizar as funções map, filter ou mesmo reduce... elas sempre retornam um valor... mas você precisa olhar direitinho pra onde esse retorno está indo, se isso não impacta na sua aplicação.