用到的技术就是ES6中的计算的属性名称
代码如下:
import React,{ Component } from 'react';
class Forms extends Component {
constructor(props) {
super(props);
this.state = {
value: '',
isGoing: true,
arr: [],
}
this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleChange(e) {
let newArr = this.state.arr;
let value = e.target.value;
const name = e.target.name;
newArr[name] = value;
this.setState({
arr: newArr,
})
}
handleSubmit(e) {
console.log(this.state.arr);
e.preventDefault();
}
render() {
return(
<form onSubmit={ this.handleSubmit }>
<label>
Is Going:
<input type='text' name='isGoing' onChange={ this.handleChange }/>
</label>
<label>
Number of guests:
<input type='number' name='numberOfGuests' onChange={ this.handleChange }/>
</label>
<input type='submit' value='Submit' />
</form>
)
}
}
export default Forms;