我有这个功能,我想回复一个承诺:
homeWordsResolve = (): ng.IPromise<any> => {
var self = this;
return this.$q.all([
self.ens.getUserProfile(),
self.wos.getWordsOrderBy(),
self.wos.getPos()
]);
}
然而,其中一个函数是同步的,只返回一个void。
getWordsOrderBy = (): void => {
this.wordsOrderBy = this.ens.getOrderBy(EnumGetOrderBy.Word)
}
有没有什么方法可以继续使用$ q.all并且可能修改getWordsOrderBy以返回一个承诺?
答案 0 :(得分:2)
是的,你可以,$q.all
接受一系列承诺或价值观。
$q.all([
$q.resolve(1),
$q.resolve(2),
3
])
.then(function(results) {
console.log(results);
});
将打印1, 2, 3