Я знаю, что это может быть довольно поздно, но я все равно оставляю этот ответ на тот случай, если кому-то это понадобится.
Я не знаю, является ли это наиболее оптимальным подходом, но для того, чтобы продолжать делать запросы на выборку (с «одинаковым» сигналом), мне пришлось создавать новый экземпляр AbortController
для каждого запроса.
В моем случае (весь код содержится в объявлении класса) я каждый раз удалял и создавал новый экземпляр, например, так:
class Foo Extends Bar {
abort_controller_instance = false;
constructor(params){
super(params);
this.resetOrStartAbortController();
}
resetOrStartAbortController(){
if(this.abort_controller_instance){
delete this.abort_controller_instance;
}
this.abort_controller_instance = new AbortController();
}
abortFetchRequest(){
if(this.abort_controller_instance){
this.abort_controller_instance.abort();
this.resetOrStartAbortController();
}
}
...
}
Возможно, это не самое элегантное решение, но оно работает.
Привет!