You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The problem is that.setState() callback is called after react finishes real DOM updates. That means, changes from parent component will cause another update cycle. Also parent component might remove calendar in response to event entirely making previous update completely useless.
You can verify such behaviour via DevTools profiler
In the screenshot above all the work before Lifecycle hook scheduled a cascading update is completely useless and causes substantial delay.
Another reason not to use .setState() for parent callbacks is to avoid crashing entire app in case parent event handler erroneously raises exception.
The text was updated successfully, but these errors were encountered:
Hmmm, if we moved this to the beginning of the function then we would potentially start two asynchronous updates - one via onChange & props, one internal via state. That would be even worse, I think?
Hello, I noticed that react-calendar notifies parent component about various events via
.setState()
callback.E.g.
react-calendar/src/Calendar.jsx
Line 310 in be7c443
The problem is that
.setState()
callback is called after react finishes real DOM updates. That means, changes from parent component will cause another update cycle. Also parent component might remove calendar in response to event entirely making previous update completely useless.You can verify such behaviour via DevTools profiler
In the screenshot above all the work before
Lifecycle hook scheduled a cascading update
is completely useless and causes substantial delay.Another reason not to use
.setState()
for parent callbacks is to avoid crashing entire app in case parent event handler erroneously raises exception.The text was updated successfully, but these errors were encountered: