Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Erro de compilação no res

Na função:

importarDados() {

    function isOK(res: Response) {

        if(res.ok) {
            return res;
        } else {
            throw new Error(res.statusText);
        }
    }

    this._service
        .obterNegociacoes(res => { //erro aqui: Parâmetro 'res' implicitamente tem o tipo 'any'
            if(res.ok) return res;
            throw new Error(res.statusText);
        })
        .then((negociacoes: Negociacao[]) => {
            negociacoes.forEach(negociacao => 
                this._negociacoes.adiciona(negociacao));
            this._negociacoesView.update(this._negociacoes);
        });
}

A solução foi colocar assim:

.obterNegociacoes((res: Response) => {

Está correto? O problema é que o meu typescript é mais recente?

4 respostas

Notei agora que ele não está detectando a interface ResponseHandler. Não sei o motivo; eu até copiei da lição.

[edit: está detectando sim, eu me enganei]

solução

Fala ai Mauricio, tudo bem? Sobre a modificação:

.obterNegociacoes((res: Response) => {

Está correto sim, isso porque ser por diferentes versões do TypeScript, talvez na versão do curso não era necessário tipar o res ou de alguma maneira o mesmo era inferido.

Mas, normalmente a gente tipa os parâmetros como você fez para ter uma melhor inteligência e entendimento do código.

Espero ter ajudado.

Obrigado.

Magina Mauricio, sempre que precisar não deixe de criar suas dúvidas.

Abraços e bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software