我有HTTP服務,它返回承諾到inspection2update.DamageTypeId
屬性並繼續執行更多。angularjs http服務等待數據
HTTP服務:
function post(objectTypeId, damageDescription) {
var defer = $q.defer();
$http.post(serviceAddress + "save/" + objectTypeId + "/" + damageDescription).then(function (response) {
defer.resolve(response.data);
});
return defer.promise;
}
在這裏,我如何在控制器調用服務:
inspection2update.DamageTypeId = damageTypesService.save(inspection2update.ObjectTypeId, self.dType);
但我要等到我從業務數據後,才,進一步執行。
爲此,我在$ http resolver中使用$q
服務,但仍然得到我的服務承諾,並且沒有數據。
我需要更改我的代碼以使服務等待數據嗎?
deferred.resolved(data)是什麼意思?數據將在呼叫回復時解決。 –