Как очистить форму после выполнения?
Для генерации id использую библиотечку node-uuid
Например: import { v4 } from 'node-uuid'
...
const myId = v4()
...
Сохраняйте изменение элементов формы в состоянии дочернего компонента, а потом просто отправляйте состояние и после очищайте его: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>
    );
  }
});