-
Notifications
You must be signed in to change notification settings - Fork 48.5k
React should throw on nested <p> tags #101
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
(Inline elements are allowed inside a |
√ react has no idea though |
React also does badly in this case with things like text nodes inside
which is confusing and doesn't help anyone. This happens because in Demo: http://jsfiddle.net/spicyj/ENxaB/ We should work on better messaging here. |
👍 to better error messages. I think this could get into dangerous territory quickly, though @petehunt. Pretty soon we'll want full-on child validation (like we have in XHP). |
React also gets confused by When you click on the table at http://jsfiddle.net/Gzm5N/1/, it should produce output of:
but doesn't because
inserts a jQuery has a hardcoded list of places where it does stuff differently https://github.com/jquery/jquery/blob/master/src/manipulation.js#L12-L30 so maybe we need the same. |
(Tables still broken in React 0.4: http://jsfiddle.net/spicyj/Gzm5N/2/) |
@spicyj The tables issue appears to be fixed, at least partially, in master. See this jsfiddle: http://jsfiddle.net/6pBnK/2/ It looks like commit fixed it: adffa9b There's still some weirdness because the original |
This solution feels a little gross to me, but I haven't been able to come up with anything better. Fixes facebook#101.
+1, I had non-dangerous looking: render: ->
_div {},
_p _h2 'Source'
_p {},
_textarea cols: 152, rows: 6, onChange: @handleChange
_p {},
_button onClick: @translate, 'Traslate'
_button onClick: @run, 'Run'
_p _h2 'Translation'
_p {},
_pre @state.result (blindly copied from some old html). Somehow baking @spicyj 's comment above into the error messages would be useful. |
Just ran into the table case (oh boy that's hard to debug!), simply by not using tbody (penalty for learning HTML before people started actually using tbody). Looking forward to 735. |
This is a better version of facebook#644. Fixes facebook#101.
Related #1987 |
I'm just going to close this out. We left it open a long time but we haven't made any progress apart from improved error messages. It's still a hard problem to solve in a reasonable way, so I'm calling it off. |
@zpao Like I mentioned in my "no data-reactid"-PR, it is possible to catch this immediately as it occurs really quite cheaply (so it's a good fit for DEV at the very least) and it's just a few lines of code as well. Considering that PROD-behavior would stay lenient, the DEV/PROD inconsistency shouldn't be an issue either. |
Nicer version of facebook#644 and facebook#735. Fixes facebook#101. Context is neat.
Pressing next forces search to select
Browsers do special things on self-closing tags like
<p>
:http://jsfiddle.net/bbrGq/1/
React should warn or throw if it detects a nested React.DOM.p.
The text was updated successfully, but these errors were encountered: