日期:2024 年 12 月 18 日
构建天气应用程序是巩固您对 JavaScript、DOM 操作、事件处理和 API 集成理解的绝佳方法。该项目将教您如何从 API 获取数据并将其动态显示在网页上。
为您的项目创建必要的文件:
在 OpenWeatherMap 上注册并获取 API 密钥。您将使用他们的 API 来获取天气数据。
示例 API URL:
https://api.openweathermap.org/data/2.5/weather?q={city}&appid={API_KEY}&units=metric
创建一个简单的布局,其中包含输入字段和显示天气信息的部分。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Weather App</title> <link rel="stylesheet" href="styles.css"> </head> <body> <div> <hr> <h3> <strong>4. Styling (Optional)</strong> </h3> <p>Add some CSS to make your app visually appealing.<br> </p> <pre class="brush:php;toolbar:false">#weather-app { text-align: center; font-family: Arial, sans-serif; margin: 50px auto; width: 300px; } input, button { padding: 10px; margin: 10px 0; } #weather-result { margin-top: 20px; }
使用 JavaScript 捕获用户输入,从 API 获取数据并显示结果。
// JavaScript code for the weather app const API_KEY = "your_api_key_here"; // Replace with your actual API key document.getElementById("search-btn").addEventListener("click", () => { const city = document.getElementById("city-input").value; if (city) { fetchWeather(city); } else { displayError("Please enter a city name."); } }); function fetchWeather(city) { const apiURL = `https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=${API_KEY}&units=metric`; fetch(apiURL) .then(response => { if (!response.ok) { throw new Error("City not found"); } return response.json(); }) .then(data => displayWeather(data)) .catch(error => displayError(error.message)); } function displayWeather(data) { document.getElementById("error-message").textContent = ""; document.getElementById("city-name").textContent = `Weather in ${data.name}`; document.getElementById("temperature").textContent = `Temperature: ${data.main.temp}°C`; document.getElementById("description").textContent = `Condition: ${data.weather[0].description}`; document.getElementById("humidity").textContent = `Humidity: ${data.main.humidity}%`; } function displayError(message) { document.getElementById("error-message").textContent = message; document.getElementById("city-name").textContent = ""; document.getElementById("temperature").textContent = ""; document.getElementById("description").textContent = ""; document.getElementById("humidity").textContent = ""; }
点击我的 GitHub Repo
构建天气应用程序集成了许多重要的 JavaScript 技能,例如:
通过完成此项目,您将获得构建更复杂的 JavaScript 应用程序的信心。
后续步骤:明天,我们将重点关注JavaScript 中的错误处理和调试,探索有效识别和解决问题的技术。敬请期待!
以上是项目:使用 JavaScript 和天气 API 构建天气应用程序的详细内容。更多信息请关注PHP中文网其他相关文章!