Это мой js-скрипт, вставленный ниже.Когда я нажимаю кнопку, она запускает функцию btnInitiateAPICall () и выполняет первый вызов API для получения числа пользователей. Но с моим кодом он не ожидает завершения первого API-интерфейса и переходит к вызову InitiateSecondAPI.Любой поможет мне исправить мой код, чтобы дождаться завершения первого вызова API, а затем начать с моего второго вызова API.
<button type="submit" class="btn btn-primary left" id="btnSubmit"
ng-disabled="working" ng-click="btnInitiateAPICall()">
submit
</button>
<img width="30" height="30" class="progressgif" style="display:none"
alt="spinner" src="../Images/spinner.gif">
$scope.btnInitiateAPICall = function () {
if ($scope.selection == '' || $scope.selection == undefined) {
alert("Please select one option from dropdown");
return;
} else {
var count=FetchNumberOfMatchingUsers($q, $http) //this call should wait until the count is returned before it goes to next line
InitiateSecondAPICall(count);
}
}
function FetchNumberOfMatchingUsers($q, $http) {
console.log("starting FetchNumberOfMatchingUsers");
$('.progressgif').show();
return $http.post("/api/UserRecords/GetUserCount", {
Instance: $scope.selection,
}).then(
function (response) {
$scope.count = 0;
$scope.count = response.data;
return response.data;
}
).catch(
function (response) {
return $q.reject(response);
});
$('.progressgif').hide();
}