Specify fallback value for post visibility password #1923
Closed
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.
This pull request resolve a warning which occurs when setting the post visibility to "Password protected".
Implementation notes:
The issue occurs because when a post does not have a password, the
getEditedPostAttribute
selector returnsundefined
. React treats anundefined
input value as an "uncontrolled" input, meaning it should never thereafter have a value explicitly assigned. Since the behavior of the input is otherwise controlled (hasonChange
specified to assign value into state) we should instead treat the input as controlled.An alternate solution is to change the behavior of
getEditedPostAttribute
to returnnull
if the value is not assigned. This may be preferable, asnull
is a more accurate representation of "explicitly no value" vs. "not assigned" (https://stackoverflow.com/a/5076962).Testing instructions:
Verify that no warning is shown in the developer tools console when changing to Password Protected visibility: