-
Notifications
You must be signed in to change notification settings - Fork 50.5k
Description
Do you want to request a feature or report a bug?
I want to report a bug.
What is the current behavior?
While using an input as controlled component:
<input
type="input"
value={this.state.inputValue}
onChange={this.handleChange}
/>
writing
handleChange = e => {
this.setState({ inputValue: e.target.value });
};
works well but using functional setState
handleChange = e => {
this.setState(() => ({ inputValue: e.target.value }));
};
crashes with TypeError: Cannot read property 'value' of null
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem. Your bug will get fixed much faster if we can run your code and it doesn't have dependencies other than React. Paste the link to your JSFiddle (https://jsfiddle.net/Luktwrdm/) or CodeSandbox (https://codesandbox.io/s/new) example below:
Working example:
https://jsfiddle.net/Luktwrdm/1435/
Crashing example (using functional setState)
https://jsfiddle.net/Luktwrdm/1436/
What is the expected behavior?
The expected behavior is that both setState (with object and with function) should have the same behavior for end-users.
Which versions of React, and which browser / OS are affected by this issue? Did this work in previous versions of React?
Browser: Google Chrome Version 70.0.3538.102 (Official Build) (64-bit)
React Version: 16.6.1
