ошибка "погода не определена" при работе с openwethermap API - PullRequest
0 голосов
/ 09 мая 2020

Я новичок в работе с API с использованием vanilla JavaScript, и я постоянно сталкиваюсь с этой ошибкой при попытке получить доступ к «описанию» внутри «объекта погоды». Консоль продолжает читать «погода не определена». Я использую открытый API карты погоды. Теоретически я должен иметь возможность получить, используя data.current.weather.description. но это не работает, как и другие варианты, которые я пробовал. Вот мой текущий код.

    window.addEventListener("load", () => {
  let long;
  let lat;
  let temperatureDescription = document.querySelector(
    ".temperature-description"
  );
  let temperatureDegree = document.querySelector(".temperature-degree");
  let locationTimezone = document.querySelector(".location-timezone");

  if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition((position) => {
      long = position.coords.longitude;
      lat = position.coords.latitude;

      const proxy = "https://cors-anywhere.herokuapp.com/";
      const api = `${proxy}https://api.openweathermap.org/data/2.5/onecall?lat=${lat}&lon=${long}&
      exclude=hourly,daily&appid=da5463709c92ab1860d3a81037565c6e`;

      fetch(api)
        .then((response) => {
          return response.json();
        })
        .then((data) => {
          console.log(data);
          const {
            temp,
            weather: { description },
          } = data.current;
          //Set DOM Elements from the API
          let kelvinToCelsius = temp - 273.15;
          temperatureDegree.textContent = kelvinToCelsius.toFixed(0);
          temperatureDescription.textContent = description;
          locationTimezone.textContent = data.timezone;
        });
    });
  } else {
  }
});

Если кто-нибудь столкнулся с этой проблемой и решил ее, был бы очень признателен, если бы вы меня заполнили.

...