roger-melo-treinamentos / curso-de-js-roger-melo

Repositório de informações do CJRM
491 stars 170 forks source link

Resumo da Aula Obtendo informações do clima da cidade 01-07 da etapa 12 #3521

Closed Kmkery closed 2 years ago

Kmkery commented 2 years ago

O segundo request necessário para a aplicação é feito com o endpoint indicado na Current Conditions API, no qual o valor obtido na primeira request é inserido para obtermos as informações sobre o tempo na cidade pesquisada. A função para o fetch neste endpoint é essencialmente igual à primeira request, apenas temos que alterar algumas partes. Primeiro, precisamos armazenar o valor retornado da primeira request, para então usá-lo na segunda request. Usamos um destructuring para acessar somente o código requerido (propriedade Key do objeto retornado na primeira request) e trocamos o nome de algumas constantes para se adequarem a este novo request.

const getCityWeather= async cityName => {
    try{
        const {Key} = await getCityData(cityName)
        const cityWeatherUrl = `http://dataservice.accuweather.com/currentconditions/v1/${Key}?apikey=${APIKey}`
        const response = await fetch(cityWeatherUrl) 
        if(!response.ok){
            throw new Error(‘não foi possível obter os dados’)
        }
        const [cityWeatherData] = await response.json()
         return cityWeatherData 

    } catch ({name, message}){
        alert(`${name}: ${message}`)
    }
}
getCityWeather(‘São Paulo’)

O objeto retornado contém diversas propriedades, referenes à cidade pesquisada, entre os quais Temperature, IsDayTime e WeatherText, necessários para a aplicação que construímos.

@Roger-Melo

Roger-Melo commented 2 years ago

Show @Kmkery. Vamo que vamo, rumo à fluência! 🙌