Angularfire2中的Promise动态数量

时间:2017-02-28 16:47:21

标签: angular ionic2 angular-promise

我使用Firebase和Angularfire2在Ionic2中构建我的项目。 在一个方法中,我想等待多个Promise返回。所以我正在使用以下approch。

deleteAll(param: string[]) {
  return Promise.all([
    this.storage.remove(param[0]),
    this.storage.remove(param[1]),
    this.storage.remove(param[2])
  ]);

但在我的情况下,param数组中的值的数量不固定。如果我尝试在side方法Promise.all中使用for循环,那么它就会出现错误。 请帮我解决这个问题。

1 个答案:

答案 0 :(得分:2)

你可以使用map将字符串数组转换为promises数组,然后将其传递给Promise.all

let promises = param.map(x => this.storage.remove(x));
return Promise.all(promises);