Я пытаюсь написать службу, которая выполняет несколько асинхронных запросов, я использую $ q, чтобы вернуть обещание, проблема в том, что я пишу какой-то повторяющийся код, я хочу удалить повторение ,Как я могу написать обещание в AngularJS
app.factory('MyService',function($q){
var ser = {
getA:function(){
var d= $q.defer; //repetitive code
asyn1().then(function(){
aync2().then(function(res){
//Process data
doSomething(res)
d.resolve();
})
});
return d.promise
} ,
getB:function(){
var d= $q.defer;
asyn3().then(function(){
aync4().then(function(res){
//Process data
doSomething(res)
d.resolve();
})
});
return d.promise
}
}
return ser;
});
В каждой функции, я повторял $q
вещи, как я могу избежать повторений.
Я хочу сделать некоторые предварительной обработки данных, после aync2, перед возвращением. Поэтому я думаю, что не могу игнорировать $ q –
Да, вы можете, цепляя обещания. Я исправлю свой ответ. –