Sobes.tech
Middle+

Why pass a function (c => c + 1) to setCount instead of just setCount(tick + 1)?

sobes.tech AI

Answer from AI

Passing a function to setCount, for example setCount(c => c + 1), is used for correctly updating the state when the new value depends on the previous one. This is important because React may batch multiple state updates and execute them asynchronously. If you write setCount(tick + 1), where tick is the current value, then with multiple rapid calls, updates may be lost because tick will not update instantly.

Example:

// Correct:
setCount(c => c + 1);

// Can lead to errors with rapid calls:
setCount(count + 1);

Thus, the function ensures that the update is based on the current state value.

Why pass a function (c => c + 1) to setCount instead… - sobes.tech