Throttle, вызывающий функцию с помощью ajax, используя lodash - PullRequest
0 голосов
/ 11 мая 2018

Я пытаюсь ограничить вызов ajax, заключенный в функцию, но, похоже, он ничего не делает, он просто продолжает работать, когда точка останова достигает линии газа и не входит в метод getPrice

_.throttle(getPrice, 1000);

var getPrice= function getPrice() {
  $.ajax({
    // call api
  });
};

1 Ответ

0 голосов
/ 11 мая 2018

throttle() возвращает новую функцию, к которой применена задержка.Это та новая функция, которую нужно вызывать, а не оригинал.Попробуйте это:

var originalGetPrice = function() {
  $.ajax({
    // call api
  });
};

var getPrice = _.throttle(originalGetPrice, 1000);

Обратите внимание, что вы можете использовать getPrice() как обычно в своей логике, и к нему будет применена задержка в 1000 мс.

...