Skip to content

Instantly share code, notes, and snippets.

@nofanto
Created October 5, 2020 07:03
Show Gist options
  • Save nofanto/1a13d8bb48288fc8eeab31713bd727ae to your computer and use it in GitHub Desktop.
Save nofanto/1a13d8bb48288fc8eeab31713bd727ae to your computer and use it in GitHub Desktop.
import React, {Component} from 'react';
class Form extends Component {
constructor(props) {
super(props);
this.initialState = {
name: '',
job: ''
};
this.state = this.initialState;
}
handleChange = event => {
const { name, value } = event.target;
this.setState({
[name] : value
});
}
onFormSubmit = (event) => {
event.preventDefault();
this.props.handleSubmit(this.state);
this.setState(this.initialState);
}
render() {
const { name, job } = this.state;
return (
<form onSubmit={this.onFormSubmit}>
<label htmlFor="name">Name</label>
<input
type="text"
name="name"
id="name"
value={name}
onChange={this.handleChange} />
<label htmlFor="job">Job</label>
<input
type="text"
name="job"
id="job"
value={job}
onChange={this.handleChange} />
<button type="submit">
Submit
</button>
</form>
);
}
}
export default Form;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment