【发布时间】:2022-01-13 15:47:12
【问题描述】:
我正在进行一个 http 调用,其中响应来自 API 的快速响应。 这是一个大数据,所以当我尝试通过浏览器将其插入我的 HTML 时会冻结
ngOnInit() {
const params = {
page: 1,
size: 100000
}
this.testSer.getPassengers(params).subscribe(
(data: any) => {
this.data = data.data;
})
}
<ul *ngFor="let item of data; let i = index">
{{ i}} -- {{ item.name }}
</ul>
我怎样才能将块上的“工作”交给浏览器?
我尝试了什么
在过去的某个地方,我看到了一个与此类似的代码
ngOnInit() {
const params = {
page: 1,
size: 100000
}
this.testSer.getPassengers(params).subscribe(
(data: any) => {
this.data = data.data;
this.timeoutInterval = setTimeout(() => {
this.loopChunks();
}, 150);
})
}
loopChunks() {
if (this.currentChunk < this.data.length) {
this.currentChunk += this.chunkStep;
this.timeoutInterval = setTimeout(() => {
this.loopChunks();
}, 1000);
}
}
他在哪里使用了 setTimeout,但我无法做到这一点
【问题讨论】:
标签: javascript html angular