我遇到了一个与一系列HTTP GET相关的奇怪问题
HttpClient
使用角度v7。
Items
,对于每个数字,我想请求API。如果阵列没有那么大,如果它大约在10以上,那么整个机制工作正常
chrome dev tools
我知道所有的请求都是
(canceled)
const nextDataSource = [];
const dataUpdate$ = from(this.dataSource).pipe(
mergeMap(item => this.api.getNextItems(item).pipe(
map(result => ({items: result, item: item})),
tap((result: { items: Item[], item: Item }) => this.updateDataSource(result, nextDataSource)),
)),
finalize(() => {
this.dataSource = [...nextDataSource];
})
);
this.subscription.add(dataUpdate$.subscribe());
这很奇怪,但如果我加上一个延迟,例如
delay(10)
在这个管道中请求没有被取消?
如何阻止这种情况,防止取消?我一点也不想要!