У меня есть метод, который возвращает обещание и работает с концепцией асинхронности / ожидания в цикле.
async getFilteredGuaranteesByPermissions(): Promise<GuaranteesMetaData[]> {
const result = [];
for (const guarantees of this.guaranteesMetaData) {
if (await this.permissionService.hasReadPermission(guarantees.key)) {
result.push(guarantees);
}
}
return this.groupingGuaranteesMetaDataCategories(result);
}
groupingGuaranteesMetaDataCategories(guarantees: GuaranteesMetaData[]): GuaranteesMetaData[] {
return _.groupBy(guarantees, 'category');
}
hasReadPermission
return boolean
groupingGuaranteesMetaDataCategories
возвращаемый массив.
Я пытался использовать Reduce, forkJoin, map, но я не могу понять, как переписать async / await в Observable правильный, который не подписывается на всеМетод hasReadPermission в цикле?