我想了解在Reactjs中实现价格/深度梯形图GUI的最有效方法的建议。
每个梯子代表一个股票,每行代表每个价格的可用尺寸和交易金额:
我目前使用的解决方案(存储在class.state中)来呈现stock表的行。此列表中的每个项目代表库存表中的一行。每个渲染都会遍历此列表,以输出图片中显示的表格。
var items = [];
for (const sid in this.state.stocks) {
const rows = this.state.stocks[sid];
items.push(
<div key={sid} style={{float: 'left'}}>
<Ladder
rows={rows}
/>
</div>
);
}
// doRender
return (
< div id={'container'}>
{items}
</div>
);
`
价格经常更新,而gui正在努力跟上。我相信这是因为每次更新都会重绘所有表格行。不管怎样,我的解决方案在负载下表现不佳。
我想优化更新并确保只渲染/处理受影响的行。
答案 0 :(得分:0)
为了提高用户界面的性能,我建议遵循以下事项:
shouldComponentUpdate(nextProps) { return this.props.rows !== nextProps.rows; }
要做到这一点,您需要正确更新行。如果有任何行被更改,那么梯形图的行需要是一个新数组,否则,保持相同的数组对象。