DEV Community

Discussion on: Accessing React State right after setting it

Collapse
 
andiekl profile image
AndieKL

Thanks for the article! I just had this problem yesterday. It took a while to figure out that the problem was setState and not the helper function I was running just ahead of it but I eventually realized my error. I used a callback instead of the lifecycle method because it was all part of a form submit. Hmmm, I just realized there's a better way... Off to improve my code!

Collapse
 
dance2die profile image
Sung M. Kim

You're welcome there Andie.

But be aware of componentDidUpdate causing an infinite recursion as Truong pointed out.

You can read it in the reactjs documentation, it says:

You may call setState() immediately in componentDidUpdate() but note that it must be wrapped in a condition like in the example above, or you’ll cause an infinite loop.

The example is

componentDidUpdate(prevProps) {
  // Typical usage (don't forget to compare props):
  if (this.props.userID !== prevProps.userID) {
    this.fetchData(this.props.userID);
  }
}
Enter fullscreen mode Exit fullscreen mode

In my case, i update and re-render component whenever i receive new data from websocket.