所以,我有一個Angular應用程序,使服務器的平穩呼叫。有一種服務包裝了對服務器的呼叫。我目前在服務上有一個方法,它只是從$ http服務返回承諾。我想在該方法調用中添加一些額外的處理,但由於承諾的異步性質,我不確定如何去做。角度服務承諾
目前打字稿:
class BoardService {
private $http;
constructor($rootScope: IRootScope, $http: ng.IHttpService) {
this.$http = $http;
}
fetchBoard(id: number) {
return this.$http.get("/api/board/" + id);
}
}
我希望得到它是這樣的:
fetchBoard2(id: number) {
this.$http.get("/api/board/" + id).success(function(data)
{
// Manipulate the data
});
// return manipulated data;
}
你會怎麼做呢?
據我所知,.success()的行爲一樣。那麼(),並返回一個派生諾言也是如此返回$ http.get()。success()也會起作用。 – Okazari
幾乎 - 感謝讓我驗證這一點。 'success'返回最初的promise(包含HTTP響應),'then'返回一個新的promise,這個promise會通過你給它的函數的結果解決。參考:http://stackoverflow.com/a/23805864/802618 –
Thx爲補充,現在沒有這個確切的。 – Okazari