我从 websocket nodejs 后端获取数据非常快,并且我使用 *ngFor 在前端显示,一段时间后我的应用程序开始滞后并最终在一段时间后崩溃。寻找解决方案。
我正在寻找异步是否可以帮助我使用 *ngFor 显示不断变化的数据
rates.component.html
<ul>
<li (click)="coin(coinz.type)" *ngFor="let coinz of btcCoins">
<a href="javascript:void(0);">
<span>
{{coinz.symbol}}/ BTC
</span>
<span class="float-right">
{{coinz.percent | number:'1.1-2'}}
{{coinz.price}}
</span>
</a>
</li>
</ul>
rates.component.ts
ngOnInit()
{
this.socketService.getPrice().subscribe(data =>
{
this.btcCoins= data;
});
}
socket.service.ts
bidask()
{
let observable = new Observable(observer =>
{
this.socket = io(this.domain);
this.socket.on('bidasks', (data) =>
{
observer.next(data);
});
return () =>
{
this.socket.disconnect();
};
});
return observable;
}
最佳答案
在迭代大型且部分变化的集合时,请确保使用 trackBy
。
可以在 https://netbasal.com/angular-2-improve-performance-with-trackby-cc147b5104e5 找到非常简单的教程。
关于node.js - 使用 websocket 快速获取数据时 Angular 应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54714869/