Open
Description
Is there an existing issue for this?
- I have searched the existing issues and my issue is uniqueMy issue appears in the command-line and not only in the text editor
Description Overview
react/jsx-newline
with { "prevent": true }
does not remove empty lines for surrounding tags.
Currently react/jsx-newline
does not detect any lint errors for the following JSX:
<div>
<span>
hi
</span>
</div>
Expected Behavior
The current detection feels like unintended behavior, as I would expect all newlines within JSX to be removed as follows:
<div>
<span>
hi
</span>
</div>
If there is a different eslint rule that checks for this please let me know!
eslint-plugin-react version
v7.33.2
eslint version
v8.55.0
node version
v18.6.0
Activity
[-][Bug]: [/-][+][Bug]: `react/jsx-newline` does not remove empty lines for surrounding tags[/+]burtek commentedon Jan 11, 2024
Works as expected? The rule adds/removed newlines between adjacent JSX elements and expressions.
That being said, it might be reasonable to add option to also check newlines at start and end of element's children 🤔
@ljharb
ljharb commentedon Jan 11, 2024
I think it's a reasonable interpretation that
<div>
and<span>
are adjacent lexically, even if they're not adjacent hierarchically, and newlines are a lexical concern.To avoid a breaking change, we'd need to add a new option for this.
jsx-newline
: support for checking newline at the start and end of children #3678