Παράδειγμα: Επαναλαμβανόμενο fetch vs helper function
Πριν: πολλαπλά fetch σε διαφορετικά endpoints με copy/paste.
Πριν
async function getWeather() {
const res = await fetch('/.netlify/functions/weather?city=Athens&country=gr');
const data = await res.json();
// ...
}
async function getApod() {
const res = await fetch('/.netlify/functions/nasa-apod');
const data = await res.json();
// ...
}
Μετά
async function fetchJson(url) {
const res = await fetch(url);
if (!res.ok) throw new Error('Request failed');
return res.json();
}
async function getWeather() {
const data = await fetchJson('/.netlify/functions/weather?city=Athens&country=gr');
// ...
}
async function getApod() {
const data = await fetchJson('/.netlify/functions/nasa-apod');
// ...
}
Γιατί είναι καλύτερο; Κεντρικοποιεί τον έλεγχο λαθών, μειώνει το copy/paste και κάνει πιο εύκολο τον μελλοντικό έλεγχο (logging, retries κ.λπ.).