Запитання з тегом «angular-promise»


10
AngularJS: ініціалізувати сервіс з асинхронними даними
У мене є служба AngularJS, яку я хочу ініціалізувати з деякими асинхронними даними. Щось на зразок цього: myModule.service('MyService', function($http) { var myData = null; $http.get('data.json').success(function (data) { myData = data; }); return { setData: function (data) { myData = data; }, doStuff: function () { return myData.getSomeData(); } }; }); …


12
Як отримати доступ до вартості обіцянки?
Я дивлюся на цей приклад з документів Angular, $qале думаю, що це, мабуть, стосується і обіцянок. Наведений нижче приклад копіюється дослівно з їхніх документів із їхнім коментарем: promiseB = promiseA.then(function(result) { return result + 1; }); // promiseB will be resolved immediately after promiseA is resolved and its value // …

5
Зачекайте, коли всі обіцянки вирішаться
Тож у мене ситуація, коли у мене є кілька ланцюжків обіцянок невідомої довжини. Я хочу, щоб деякі дії були запущені, коли всі ланцюги були оброблені. Це навіть можливо? Ось приклад: app.controller('MainCtrl', function($scope, $q, $timeout) { var one = $q.defer(); var two = $q.defer(); var three = $q.defer(); var all = …

1
Чи ніколи не вирішена обіцянка спричиняє витік пам'яті?
У мене є Promise. Я створив його для скасування запиту AJAX, якщо це потрібно. Але оскільки мені не потрібно скасовувати цей AJAX, я ніколи його не вирішував, і AJAX успішно завершився. Спрощений фрагмент: var defer = $q.defer(); $http({url: 'example.com/some/api', timeout: defer.promise}).success(function(data) { // do something }); // Never defer.resolve() because …

4
angular $ q, Як прив’язати кілька обіцянок всередині і після циклу for
Я хочу мати цикл for, який викликає асинхронні функції на кожній ітерації. Після циклу for я хочу виконати ще один блок коду, але не раніше, ніж всі попередні виклики у циклі for будуть вирішені. Моя проблема на даний момент полягає в тому, що або код-блок після циклу for виконується до …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.