【发布时间】:2017-08-03 16:06:03
【问题描述】:
我从事我的 angularjs 项目。 我创建了这个服务:
(function () {
"use strict";
angular.module("manageItems").factory("manageItemsService", ["$http", "config", manageItemsService]);
function manageItemsService($http, config) {
var service = {
getNewItems: getNewItems,
};
return service;
function getNewItems(session, mapName) {
return $http.get(serviceUrl + 'getNewItems/' + session + "/" + mapName);
}
}
})();
这里是我如何从控制器调用服务:
function getNewItems() {
manageItemsService.getNewItems(mapguideService.mapName, mapguideService.sessionId).then(function (result) {
self.currentItems = result.data;
})
}
我需要在响应返回时延迟服务。
如何更改 servicefunction 以使其等到 self.currentItems 属性被数据填充?
【问题讨论】:
-
这是预期的行为,但问题是什么??
-
@PankajParkar 请查看更新
-
我可以知道确切的场景是什么吗??
-
从 getNewItems() 返回一个承诺
-
@PankajParkar 服务被触发,我需要等待数据。如果响应为空,我需要触发另一个服务。但只有在我检查第一个调用是否为空之后。
标签: angularjs angular-promise angularjs-service angularjs-http