Команда mov dword [esp], 0x80486b2
перемещает 32-битное мгновенное значение 0x80486b2 в 32-разрядную ячейку памяти, на которую указывает ESP. Если он переместил 32-битное значение при сохранении адреса 0x80486b2 в пункт назначения, он будет записан как mov dword [esp], dword [0x80486b2]
. Однако это не допустимая комбинация операндов для инструкции MOV.
Обратите внимание, что в вашей разборке используется синтаксис NASM.
Используйте forkJoin , чтобы выполнить и объединить весь ваш http-запрос, и mergeMap массив, отправленный из вашего источника в Observable, возвращенный forkJoin
. forkJoin
объединит последние (и только) переданные значения из всех ваших http-запросов в массив после того, как все они будут выполнены. Обратите внимание, что requestNum
должно завершиться после выдачи значения для forkJoin
для работы. (Http-запрос от Angular HttpClient
завершается после того, как они передают значение)
В зависимости от вашего Observable x
и желаемого поведения вы можете использовать switchMap вместо mergeMap
. [ 1112]
import { forkJoin } from 'rxjs';
import { mergeMap } from 'rxjs/operators';
serverNums : Observable<number[]> = x.pipe(
mergeMap(num_array => forkJoin(num_array.map(n => requestNum(n))))
);
Вы не объяснили, какова структура интерфейса данных, поэтому я могу предположить, что из массива:
[1,2,3]
вы хотите создать объект:
{1:1, 2:2, 3:3}.
[ 118] (если вы опубликуете свой интерфейс данных, я обновлю ответ соответствующим образом).
Чтобы создать объект из массива, вы можете использовать уменьшать :
x.pipe(reduce((pre,curr)=>{pre[curr]=curr; return pre;}, {})
Пипсы начинаются с пустого объекта ({}) и в каждом Итерация добавляет свойство pre [curr] к этому объекту и устанавливает его как curr.
РЕДАКТИРОВАТЬ:
Вам нужно выровнять Observable<Observable<number>>
и Observable<number>
, используя mergeMap (AKA flatMap): [1117 ]
serverNums : Observable<Observable<number>[]> = x.pipe(
map(num_array => num_array.map(n => requestNum(n)),
mergeMap(num=>num)
)
это создаст все значения requestNum (n) в одной наблюдаемой типа Observable.