从反应组件

时间:2016-12-06 20:07:39

标签: reactjs redux web-analytics

从React组件发送分析事件的正确方法是什么?目前,如果我从组件呈现方法发送它,事件会多次发送,因为组件由于setState调用而重新呈现多次。如果我在发送分析事件后尝试设置状态标志,以避免多个事件发送setState的警告

  

“在现有状态转换期间无法更新”

1 个答案:

答案 0 :(得分:0)

如果您需要设置组件状态,请不要在渲染过程中执行此操作,否则您将面临您所看到的确切错误。

相反,请在comopnentWillReceiveProps()中执行此操作。在那里,您可以在实际渲染开始之前自由设置状态。

但要记住两件事:

  • 如果您已实施此方法,将始终独立于shouldComponentUpdate()的结果执行此方法。
  • 如果只有组件状态发生变化,不会执行,只有对组件道具的更改才会触发它。