Sobes.tech
Junior — Middle

Kako pratiti i obraditi grešku koja se javlja prilikom korišćenja obećanja u stanju odbijeno?

sobes.tech АИ

Одговор од АИ

Да бистриш и управљаш грешком када користиш обећање у одбијеном стању, можеш користити метод .catch() или други аргумент метода .then().

Пример са .catch():

fetch('https://api.example.com/data')
  .then(response => {
    if (!response.ok) {
      return Promise.reject('Грешка мреже');
    }
    return response.json();
  })
  .then(data => {
    console.log('Подаци:', data);
  })
  .catch(error => {
    console.error('Дошло је до грешке:', error);
  });

Такође можете користити try...catch унутар асинхроне функције са await:

async function getData() {
  try {
    const response = await fetch('https://api.example.com/data');
    if (!response.ok) {
      throw new Error('Грешка мреже');
    }
    const data = await response.json();
    console.log('Подаци:', data);
  } catch (error) {
    console.error('Дошло је до грешке:', error);
  }
}
getData();

Овај начин руковања грешкама у одбијеном стању омогућава правилну реакцију на неуспехе и спречава пад апликације.