fix(canvas) Leave jsx text blocks as they are when rendering the canvas#1420
Merged
fix(canvas) Leave jsx text blocks as they are when rendering the canvas#1420
Conversation
Contributor
|
Link to test editor |
seanparsons
approved these changes
Jun 23, 2021
enidemi
approved these changes
Jun 23, 2021
balazsbajorics
approved these changes
Jun 23, 2021
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.

Fixes #1414
Problem:
React stringifies the children of
<option>elements by design (see facebook/react#13465). Since we were wrapping jsx text blocks in a fragment when rendering on the canvas, that meant all options would be displayed as[object Object]. I don't believe we had an explicit reason for doing this, other than the return type of the rendering function wasReact.ReactElement.Fix:
Change the return type of those rendering functions to
React.ReactChild, which is a union ofReactElement,stringandnumber, so that for jsx text blocks we can just return the text as intended.