DEV Community

Discussion on: Common mistake done while using react hooks

Collapse
 
tonestrike profile image
Tony Giorgi • Edited

This is not very accurate. If you read this article, read through all of the comments. The author has confused most of what he is talking about.

@karthick3018 , you should probably delete this article or make changes after reading through and understanding the comments. This will lead to confusion in the future for other developers.

Collapse
 
karthick30 profile image
KaRthick

Hi I didn't propose any wrong solution for the problem , I'm just telling don't do this mistake while using react-hooks . If this problem is wrong provide an working demo i'll remove the post

Collapse
 
tonestrike profile image
Tony Giorgi • Edited

Supplying a brand new array will definitely call the hook. The issue is if you maintain the same array, what the hook is fired based on is changed identity. So if you create a new object / array then the hook will fire. If you don't and merely update it, it won't. It's not a react hooks issue. It's is entirely based on Javascript identity. See reference vs value types.

Thread Thread
 
karthick30 profile image
KaRthick

again i'm trying to address an issue based on the scenario where an value in the object gets updated hooks will be called again even the previous value in the object and the current updated value are same

Thread Thread
 
tonestrike profile image
Tony Giorgi • Edited

You are creating a new array. This code is simply wrong and misleading. If you want to update the value of name for record 2, find the object in the array, update and set state to the same array. Then your code will make sense.