Как отменить ожидающие вызовы API в Angular JS

У меня есть окно поиска, и для каждого письма, которое вводит пользователь, у меня выполняется 4 вызова API. и если пользователь вводит длинное слово, многие вызовы API переходят в состояние ожидания. с каждым новым письмом, которое пользователь вводит, как я могу проверить и отменить, если предыдущий вызов находится в состоянии ожидания.

FController.prototype.typeAheadSearch = function (query) {
    var this_ = this;
    var dfd = this.$q.defer();
    this.$q.all([this.TypeAheadFactory.API.A(query),
                 this.TypeAheadFactory.API.B(query),
                 this.TypeAheadFactory.API.C(query),
                 this.TypeAheadFactory.API.D(query)])
        .then(function (responses) {

    // to do
            dfd.resolve(results);
        });

    return dfd.promise;
}

person Ireal23    schedule 07.09.2015    source источник


Ответы (1)


Вы можете перехватить запрос и ответ и работать над этим. В angularjs есть концепция перехватчиков. Дополнительную информацию можно найти здесь: https://docs.angularjs.org/api/ng/service/$http

Надеюсь это поможет.

person Vipul Agarwal    schedule 07.09.2015
comment
как это поможет отменять звонки? - person Ireal23; 07.09.2015