Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

erro no 'cityData' do 'responseJSON.find()'

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
Não consigo resolver esse erro, parece que o cityData está recebendo algo sem tipo

1 resposta
solução!

Olá, João, como vai?

Esse erro acontece porque quando você usa o find() sem tipar o dado que está sendo iterado, ele assume o tipo any se não houver inferência automática. No caso, o responseJSON vem de um fetch() e o json() retorna any, então o TypeScript não consegue saber a estrutura de cityData.

No seu projeto a configuração do TypeScript provavelmente está diferente do projeto do instrutor, especialmente na opção strict. Quando essa opção está desativada no tsconfig.json, o compilador não reclama se uma variável ou parâmetro tiver tipo any implícito.

Por exemplo, no projeto do instrutor o tsconfig.json está assim, como pode conferir no repositório:

{
  "compilerOptions": {
    "strict": false
  }
}

No seu caso, provavelmente está assim:

{
  "compilerOptions": {
    "strict": true
  }
}

O código deve funcionar nos dois cenários, mas no seu caso o TypeScript está mais rigoroso na checagem de tipos.

Espero ter ajudado.

Siga firme nos seus estudos e conte com o fórum sempre que precisar.

Abraços :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado