【发布时间】:2016-07-26 09:31:20
【问题描述】:
我正在用 react/redux/javascript 开发生命游戏的一个版本,而我让它工作的时候性能很糟糕。
Here is a link to the running game Here's the source on githhub
目前,我在每个滴答声(用户可更改 250,500,750 毫秒)更新每个单元格的状态。为此,我正在遍历代表每个单元格的对象数组。在每个对象中都有一个称为 status 的参数,它可以是一个整数,1 表示存活,0 表示死亡。
然后我拉入三行,每行三个单元格,对于相关单元格周围的上述中间行和底部行,然后我对这些值求和(不包括中心的单元格本身)。
然后我通过 if/then 流程运行该数字以确定该单元格的新状态。
然后对应用程序中的每个单元格重复此过程。完成后,每个单元格的新状态将使用 redux 进行分派,并且组件会根据需要进行更新。
在实际视图中,每个单元格都是一个反应组件,它从网格容器接收它的状态作为道具。我已将 shoulComponentRender() 设置为仅在其生命状态发生变化时重新渲染单元格。
我认为从分析应用程序(我不是很清楚/不擅长)来看,计算所有值的过程会减慢速度,但我可能是错的,它可能是 React 组件导致问题。
感谢任何帮助/帮助!
【问题讨论】:
-
我现在已经将更新的代码上传到 Github,似乎是导致问题的 GUI 渲染,但我无法锻炼如何改进它?
标签: javascript reactjs redux