Сохраняйте изменение элементов формы в состоянии дочернего компонента, а потом просто отправляйте состояние и после очищайте его:
function getDefaultState() {
return {
title: '',
year: '',
format: '',
actors: ''
};
}
export default React.createClass({
handleFilmAdd() {
this.props.onFilmAdd({
id: 'some_id',
...this.state
});
this.setState(getDefaultState());
},
handleChange(field, value) {
this.setState({
[field]: value
});
}
render() {
return (
<div>
<input
value={this.state.title}
onChange={this.handleChange.bind(this, 'title')}
placeholder='Title'
ref='addTitle'
/>
<input
value={this.state.year}
onChange={this.handleChange.bind(this, 'year')}
placeholder='Release Year'
ref='addYear'
/>
<input
value={this.state.format}
onChange={this.handleChange.bind(this, 'format')}
placeholder='Format'
ref='addFormat'
/>
<textarea
value={this.state.actors}
onChange={this.handleChange.bind(this, 'actors')}
placeholder='Actors'
ref='addActors'>
</textarea>
<button onClick={this.handleFilmAdd}>Add</button>
</div>
);
}
});