2016-04-29 4 views
0

Ich habe diese Funktion, die Ich mag würde ein Versprechen zurück:

homeWordsResolve =(): ng.IPromise<any> => { 
    var self = this; 
    return this.$q.all([ 
     self.ens.getUserProfile(), 
     self.wos.getWordsOrderBy(), 
     self.wos.getPos() 
    ]); 
} 

jedoch eine der Funktionen ist synchron und gibt nur eine Leere.

getWordsOrderBy =(): void => { 
    this.wordsOrderBy = this.ens.getOrderBy(EnumGetOrderBy.Word) 
} 

Gibt es irgendeine Art und Weise, dass ich noch $ q.all halten konnte mit und vielleicht die getWordsOrderBy modifizieren, um ein Versprechen zurückzukehren?

Antwort

2

Ja, Sie können, $q.all akzeptiert eine Reihe von Versprechen oder Werte.

$q.all([ 
    $q.resolve(1), 
    $q.resolve(2), 
    3 
]) 
.then(function(results) { 
    console.log(results); 
}); 

druckt 1, 2, 3

Verwandte Themen