Disable jsx-a11y/no-onchange lint rule #50023
Merged
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.
Changes proposed in this Pull Request
jsx-a11y/no-onchange
lint ruleAs outlined in jsx-eslint/eslint-plugin-jsx-a11y#398, the rule is no longer relevant. It goes against the official React docs and keyboard navigation in
<select>
controls works fine using theonChange
prop. The issue was in browsers older than IE 11.I believe the issue was that pressing the down key while moving through the options would immediately call
onChange
, which a React dev would probably use to set some state that could cause all sort of DOM changes, perhaps even making it impossible to make the selection you want.The rule was removed from the
jsx-a11y/recommended
list in jsx-eslint/eslint-plugin-jsx-a11y#757 which will be shipped in a future release. I just wanted to get ahead of that release because I'm working on a PR that uses<select>
now and discovered the warning wasn't doing anything useful.Testing instructions