JavaScript · Intermediário · Inglês · Técnico
AbortController
Objeto que emite um sinal de cancelamento. Passando seu signal a fetch ou a ouvintes de eventos, chamar abort() interrompe a operação, que falha com AbortError.
Onde usar
Usado para cancelar buscas antigas quando o usuário digita de novo, ou para impor um timeout. Em code review, evita que respostas velhas sobrescrevam as novas.
Em código
const ctrl = new AbortController();
const { signal } = ctrl;
fetch('https://exemplo.com', { signal })
.catch((e) => console.log(e.name));
ctrl.abort(); // AbortErrorExemplos
We cancel the old request with AbortController when the user types again.
Cancelamos a requisição antiga com AbortController quando o usuário digita de novo.
That AbortError in the log is expected; it's just the cancelled request.
Esse AbortError no log é esperado; é só a requisição cancelada.
Cuidado
Tratar o AbortError como falha real e mostrar mensagem de erro ao usuário.