如何使条件语句中的条件语句起作用?

时间:2018-11-08 17:07:29

标签: javascript

我正在为网站使用天气API,我希望背景图片与天气状况,温度和一天中的时间相关。但是,当我试图将各种条件放在可以使其正常工作的条件下时,它的运行不像我预期的那样。这是代码:

if (hour24 > 18 || hour24 < 6) {
    imagePath += 'images/weather/night';
    if (res.weather[0].main === 'Clear' && res.main.temp >= 50) {
        imagePath += 'night.png';
    }
} else if (hour24 >= 6 && hour24 < 11) {
    imagePath += 'images/weather/morning';
} else {
    imagePath += 'images/weather/morning';
}

此外,这是回购链接:https://github.com/rise-and-shane93/adenaMaryKay。基本上,我是根据我提到的三个参数为背景图像构建文件路径的。让我知道这还是行不通的。

2 个答案:

答案 0 :(得分:0)

似乎您缺少图像的正确路径。使用现有代码,它将 图像路径将为images/weather/nightnight.png

if (hour24 > 18 || hour24 < 6) {
    imagePath += 'images/weather/night/'; // added forward slash here
    if (res.weather[0].main === 'Clear' && res.main.temp >= 50) {
        imagePath += 'night.png';
    }

答案 1 :(得分:0)

由于OpenWeatherMap API在JSON响应中包含weather.icon和Wheather.id字段,因此您可以使用它们相应地设置您的背景。这样可以简化代码,以允许访问路径为“ /img/${icon}.png”的图像

有关更多信息,请参见https://openweathermap.org/weather-conditions