Use default reducer state value as initial state when using useReducer hook #12
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.



Use default reducer state value as initial state when using useReducer hook
Based on discussion from issue facebook#14542.
If we provide the following reducer:
Then in the component:
We don't get count equal
5in the initial render.It works if we provide the
initialStateas second argument foruseReducer:or like @ckknight mentioned if we call an initialization action:
However I think it's a little redundant because we already set the default state value in the reducer function.
This pull request add some changes to use the default state value from the reducer function if no
initialStatewas provided touseReducer.I don't know if this behaviour was discussed during the implementation of
useReducer, but if this is not the desired behaviour foruseReducerfeel free to close this pull request.