使用Ant Design Charts的Line组件实测每100ms更新一次数据,每次更新1000条数据,会造成界面交互卡顿,解决思路如下:
使用全局静态变量存储图表数据,在WebSocket接收数据时累加并更新数据到全局变量,这样全局变量的图表数据仍然是100ms间隔的1000条数据,然后使用onReady将Chart实例取出,使用定时器手动1s更新一次Line的数据,这样数据量不变,仅改变Line刷新频率,界面交互就不会卡顿。
前端的大数据量的处理不是性能瓶颈,界面显示组件的反复高频次更新会造成性能低下。