Learn the fundamentals of React, including simple and class components, state, props, and submitting form data.
Multiple Inputs Example
<div id="root"></div> |
class Reservation extends React.Component { | |
constructor(props) { | |
super(props); | |
this.state = { | |
isGoing: true, | |
numberOfGuests: 2 | |
}; | |
this.handleInputChange = this.handleInputChange.bind(this); | |
} | |
handleInputChange(event) { | |
const target = event.target; | |
const name = target.name; | |
const value = target.type === "checkbox" ? target.checked : target.value; | |
this.setState({ | |
[name]: value | |
}); | |
} | |
render() { | |
return ( | |
<form> | |
<label> | |
Is going: | |
<input name="isGoing" type="checkbox" checked={this.state.isGoing} onChange={this.handleInputChange} /> | |
</label> | |
<br/> | |
<label> | |
Number of guests: | |
<input name="numberOfGuests" type="number" value={this.state.numberOfGuests} onChange={this.handleInputChange} /> | |
</label> | |
</form> | |
); | |
} | |
} | |
ReactDOM.render( | |
<Reservation />, | |
document.getElementById("root") | |
); |
<script src="https://unpkg.com/react/umd/react.development.js"></script> | |
<script src="https://unpkg.com/react-dom/umd/react-dom.development.js"></script> |