Skip to content

Commit 5c86248

Browse files
committed
React Form - Obtain user input
1 parent 00be331 commit 5c86248

File tree

2 files changed

+20
-5
lines changed

2 files changed

+20
-5
lines changed

src/components/AddUser.jsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ const AddUser = (props) => {
1010
type="text"
1111
placeholder="Enter a username"
1212
required
13+
value={props.username}
14+
onChange={props.handleChange}
1315
/>
1416
</div>
1517
<div className="form-group">
@@ -19,14 +21,16 @@ const AddUser = (props) => {
1921
type="email"
2022
placeholder="Enter an email address"
2123
required
24+
value={props.email}
25+
onChange={props.handleChange}
2226
/>
2327
</div>
2428
<input
2529
type="submit"
2630
className="btn btn-primary btn-lg btn-block"
2731
value="Submit"
2832
/>
29-
</form>
33+
</form>
3034
)
3135
}
3236

src/index.js

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@ class App extends Component {
99
constructor() {
1010
super()
1111
this.state = {
12-
users: []
12+
users: [],
13+
username: '',
14+
email: ''
1315
}
1416
}
1517

@@ -24,10 +26,14 @@ class App extends Component {
2426

2527
addUser(event) {
2628
event.preventDefault();
27-
console.log('sanity check!');
28-
//console.log(this);
29+
console.log(this);
2930
}
3031

32+
handleChange(event) {
33+
const obj = {};
34+
obj[event.target.name] = event.target.value;
35+
this.setState(obj);
36+
}
3137

3238
render() {
3339
return (
@@ -37,7 +43,12 @@ class App extends Component {
3743
<br/>
3844
<h1>All Users </h1>
3945
<hr/><br/>
40-
<AddUser addUser={this.addUser.bind(this)}/>
46+
<AddUser
47+
username={this.state.username}
48+
email={this.state.email}
49+
handleChange={this.handleChange.bind(this)}
50+
addUser={this.addUser.bind(this)}
51+
/>
4152
<br/>
4253
<UsersList users={this.state.users} />
4354
</div>

0 commit comments

Comments
 (0)