This repository has been archived by the owner on Jul 8, 2024. It is now read-only.
Fix: DO-3028 'Maximum update depth...' react error in select #111
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.
Motivation and Context
Issue reported that in some cases Select ends up displaying a 'Maximum update depth...' error.
Reproduced the issue in the internal product but it usually doesn't occur in just local storybook, except when in mobile emulation mode. Research suggested it's likely related to these similar issues:
Some of them seem to be fixed in Downshift v8 or v9 but we're still on v7, didn't want to upgrade now as there's breaking changes to work through and test.
Instead I applied workarounds as suggested in the threads - mainly around memoizing the props produced by the downshift prop getters.
Implementation Description
Any new dependencies Introduced
How Has This Been Tested?
Locally in storybook, after these changes I can't reproduce in mobile emulation mode (except for multiselect for some reason, but that one was not reported as an issue in prod so leaving for now).
Copied over the modified file to internal product, seems to fix the issue there as well.
PR Checklist:
Screenshots (if appropriate):