Вот пример из MDN ниже.Есть две кнопки.Один отправляет запрос, а другой отменяет.
var controller = new AbortController();
var signal = controller.signal;
var downloadBtn = document.querySelector('.download');
var abortBtn = document.querySelector('.abort');
downloadBtn.addEventListener('click', fetchVideo);
abortBtn.addEventListener('click', function() {
controller.abort();
console.log('Download aborted');
});
function fetchVideo() {
...
fetch(url, {signal}).then(function(response) {
...
}).catch(function(e) {
reports.textContent = 'Download error: ' + e.message;
})
}
Теперь мой случай другой.У меня есть параметр query
, и если выборка выполняется, но не завершена, и параметр query
изменяется - как отправить новый запрос, автоматически отменяя предыдущий?