我使用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循环,那么它就会出现错误。
请帮我解决这个问题。
答案 0 :(得分:2)
你可以使用map
将字符串数组转换为promises数组,然后将其传递给Promise.all
let promises = param.map(x => this.storage.remove(x));
return Promise.all(promises);