Projekt: Weather App
Leden 2026
Projekt byl zaměřený na práci s externím API a asynchronní logikou v JavaScriptu. Aplikace načítá data o počasí ze služby Visual Crossing.
Co bylo důležité
Přešel jsem z .then() na async/await, což zlepšilo čitelnost i ladění.
Jádro načítání dat:
const getWeather = async () => {
try {
const response = await fetch(url);
// Fetch nehodí chybu při 404, musíme to hlídat ručně
if (!response.ok) {
throw new Error(`Chyba načítání: ${response.status}`);
}
const data = await response.json();
// Úprava DOM až po úspěšném načtení
weatherContent.textContent = `V městě ${data.address} je právě ${data.currentConditions.temp}°C`;
} catch (error) {
console.error(error);
}
};
Co mě potrápilo
- Bezpečné zacházení s API klíčem: přesun mimo veřejný repozitář.
- HTTP chyby:
fetchnevyhazuje chybu automaticky pro 4xx/5xx, je nutné kontrolovatresponse.ok. - Práce se stavy UI: zobrazit data až po úspěšném načtení.
Co jsem si odnesl
- Jistotu v práci s
async/awaitatry/catch. - Lepší kontrolu chybových stavů při volání API.
- Praktický základ pro další aplikace napojené na externí služby.
GitHub: projekt weather app