У меня есть массив объектов, в котором один из ключей содержит идентификатор клиента.
const customerArray = [{ customerId: 123, ...}, { customerId: 456, ...}];
Я хочу перебрать этот массив и выполнить вызов API для получения дополнительной информации об этом клиенте от отдельная конечная точка.
const mapped = customerArray
.map(customer => ({
customerId: customer.customerId,
rating: this.productService(customer.customerId)
.pipe(map(rating => rating))}));
Я ожидаю, что тогда у меня будет массив, который включает в себя объект следующей формы:
{
customerId: number,
rating: number
}
Вместо этого я получаю:
{
customerId: number,
rating: Observable
}
Мой вызов productService
возвращается на наблюдаемый и успешно используется в другом месте приложения. Мне нужно, чтобы мой map
дождался завершения вызова с помощью ключа рейтинга, прежде чем сопоставить следующий элемент в массиве.