Sobes.tech
Junior — Middle

Hoe kunt u een fout die optreedt bij het gebruik van een belofte in de afgewezen staat, traceren en afhandelen?

sobes.tech AI

Antwoord van AI

Om een fout te volgen en te behandelen bij het gebruik van een belofte in de rejected-toestand, kun je de .catch()-methode of het tweede argument van de .then()-methode gebruiken.

Voorbeeld met .catch():

fetch('https://api.example.com/data')
  .then(response => {
    if (!response.ok) {
      return Promise.reject('Netwerkfout');
    }
    return response.json();
  })
  .then(data => {
    console.log('Gegevens:', data);
  })
  .catch(error => {
    console.error('Er is een fout opgetreden:', error);
  });

Je kunt ook try...catch gebruiken binnen een asynchrone functie met await:

async function getData() {
  try {
    const response = await fetch('https://api.example.com/data');
    if (!response.ok) {
      throw new Error('Netwerkfout');
    }
    const data = await response.json();
    console.log('Gegevens:', data);
  } catch (error) {
    console.error('Er is een fout opgetreden:', error);
  }
}
getData();

Op deze manier maakt foutafhandeling in de rejected-toestand het mogelijk om correct te reageren op fouten en te voorkomen dat de applicatie crasht.