在 setTimeout 循环中调用分派时内存使用量增加

Increase in Memory usage when dispatch is called in a setTimeout loop

我有一些功能可以连续调用 dispatch 从数据库中提取数据。该代码类似于以下代码段:

componentWillMount()
  {
    this.startPoll();
  }

  startPoll() {
    console.log('StartPoll called!');
    this.props.dispatch({type: 'TEST'});
    setTimeout(this.startPoll.bind(this), 150000);
  }

有了这个,我发现 Chrome ( Shift + Escape ) 中的内存使用量不断上升并达到数百 MB,最终应用程序变得无响应。其他浏览器也是如此。

如果我在循环中调用常规函数而不是分派,我不会看到内存使用量增加。

我是 javascript 和 react/redux 的新手,所以可能缺少一些基本的东西。感谢您对此提供任何帮助!

问题的原因是我在项目中启用了 DevTools。正如预期的那样,Devtools 会跟踪自应用程序启动以来的每个状态更改。关闭它解决了这个问题!!