Я создаю простое приложение Weather React с помощью Open Weather API. Я также использую внешнюю библиотеку для значков погоды.
Пользователь вводит название города и получает текущую температуру со специальным значком в зависимости от описания.
Моя проблема в том, что нет способа определить, день сейчас или ночь, что было бы характерно для значка, который необходимо отображать.
Я понимаю, что метка времени Unix из данных выбирается для города, но когда я ее конвертирую, отображается местное время. Также есть смещение часового пояса, но, насколько я понимаю, его нельзя преобразовать в название города в JavaScript. Я проверил npm
пакеты, но не нашел. Я хочу иметь возможность получать дату / время для конкретного города, в котором выполняется поиск, а не для моего местного времени.
Мне просто перейти на другой API? Ниже приведены данные, полученные из Лондона:
{coord: {…}, weather: Array(1), base: "stations", main: {…}, visibility: 10000, …}
base: "stations"
clouds: {all: 40}
cod: 200
coord: {lon: -0.13, lat: 51.51}
dt: 1592155233
id: 2643743
main: {temp: 71.8, feels_like: 66.69, temp_min: 71.01, temp_max: 73, pressure: 1014, …}
name: "London"
sys: {type: 1, id: 1414, country: "GB", sunrise: 1592106173, sunset: 1592165939}
timezone: 3600
visibility: 10000
weather: Array(1)
0: {id: 802, main: "Clouds", description: "scattered clouds", icon: "03d"}
length: 1
__proto__: Array(0)
wind: {speed: 9.17, deg: 170}
sunrise
иsunset
- значения UTC иDate.getTime()
, поэтому сравнение с закатом / восходом солнца должно быть легко определить день / ночь. - person charlietfl   schedule 14.06.2020