How to set default values for uncontrolled React components
In React, the value attribute on form elements will override the value in the DOM. With an uncontrolled component, you might want React to specify the initial value, but leave subsequent updates uncontrolled. To handle this case, you can specify a defaultValue
attribute instead of value
prop.
render() {return (<form onSubmit={this.handleSubmit}><label>User Name:<inputdefaultValue="John"type="text"ref={this.input} /></label><input type="submit" value="Submit" /></form>);}
The same applies for select
and textArea
inputs. But you need to use defaultChecked
for checkbox
and radio
components.
It's important to note that setting a default value like this only applies when the component is first rendered. If the user enters a new value into the field, the default value will be overwritten.
April 11, 2022
4079
Read more
What is React?
November 06, 2022
ReactJSHow to programmatically trigger click event in React?
November 06, 2022
ReactJS