В angular мы можем настроить кнопку для отправки таких запросов ajax, как это:
... ng-click="button-click"
и в контроллере:
...
$scope.buttonClicked = function() {
...
...
// make ajax request
...
...
}
Итак, чтобы предотвратить двойную отправку, я мог установить флаг buttonclicked = true, когда кнопка щелкнула и отменила его, когда завершится обратный вызов ajax. Но даже после этого управление возвращается к angular, который будет обновляться до Dom. Это означает, что есть маленькое окно, где кнопка может быть нажата снова, прежде чем исходный щелчок на кнопке будет полностью завершен на 100%.
Это небольшое окно, но все же может случиться. Любые советы, чтобы полностью избежать этого - клиентская сторона, то есть без каких-либо обновлений для сервера.
Спасибо