2
respostas

VS Code marca erro porém código está compilando

Após colocar o retorno do método obterNegociacoes na classe NegociacoesService, o VS Code fica dando erro que o tipo do retorno Promise<Negociacao[]> não é compativel com o retorno do fetch. Já abri r fechei o VS Code e continua. O mais estranho é que o código compila e está funcionando... Inclusive já copiei o código da página do curso pois achei que podia ter digitado algo errado e o erro continua....

obterNegociacoes(handler: HandlerFunction):Promise<Negociacao[]> {
        return fetch('http://localhost:8080/dados')
            .then(res => handler(res))
            .then(res => res.json())
            .then((dados: NegociacaoParcial[]) => 
                dados.map(dado => new Negociacao(new Date(), dado.vezes, dado.montante))
            )
            .catch(err => console.log(err));
    }
2 respostas

Oi, Andrea, tudo bem?

Esse erro tem relação com a versão do Typescript atual em que ele pede para que tratemos o erro dentor do bloco do catch. Para solucionar, utilze o throw dentro do catch, dessa forma:

  .catch(err => {throw new Error(err) });

Testa e me fala se deu certo!

Sim Laís funcionou, mas no curso era pra escrever no console e não fazer throw... Obrigada.

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