【发布时间】:2016-08-25 09:07:43
【问题描述】:
在 Typescript 中我有类似的东西:
return this.$q.all([
1,
2,
3
]);
我用 1,2 和 3 表示的实际代码是两个承诺和一个返回数字的函数。我还尝试了两个 Promise 和一个返回布尔值的函数。
代码如下:
return this.$q.all([
self.ens.getUserProfile(),
self.getWordsOrderBy(),
self.getPos()
]);
这没有通过 Typescript 检查器并给出如下消息:
'(IPromise | number)[]' 类型的参数不是 可分配给 '{ [id: string]: IPromise; 类型的参数}'。
类型 '(IPromise | 数)[]'。
有人对可能出现的问题有任何想法吗?据我了解 $q.all 将接受承诺或价值。
这是我拥有的返回值或布尔值的函数:
getWordsOrderBy = (): number => {
this.wordsOrderBy = this.ens.getOrderBy(EnumGetOrderBy.Word)
return 1;
}
getWordsOrderBy = (): boolean => {
this.wordsOrderBy = this.ens.getOrderBy(EnumGetOrderBy.Word)
return true;
}
有什么方法可以让 getWordsOrderBy 返回一个承诺,或者我可以让 $q.all 接受一个布尔值和一个承诺吗?请注意,它是一个立即返回的同步函数。
【问题讨论】:
标签: javascript typescript