Bug: Widgets can render twice during a scheduled render #712
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Type: bug
The following has been addressed in the PR:
prettier
as per the readme code style guidelinesDescription:
Widgets can end up rendering twice during a single scheduled render which can cause issues with the rendered dom and cause unnecessary processing. This happens when the widget and a parent of a widget is invalidated and ends up rendering due to a property changes or being marked as dirty - then during the render something marks the widget dirty again which means it's rendered again.
The widget should be marked as not dirty after the render and not before.
codesandbox: https://codesandbox.io/s/dreamy-swartz-dco38