var Form = React.createClass({ getNewCourse: function() { return { title: "", link: "", code: "", university: "", category: "", readings: "", assignments: "", notes: "", videos: "" } }, getInitialState: function() { var data = localStorage.getItem('courses'); var courses = data === null ? [] : JSON.parse(data); return { courses: courses, course: this.getNewCourse() } }, clearData: function(e) { e.preventDefault(); localStorage.setItem('courses', JSON.stringify([])); this.setState({ courses: [] }); }, handleSubmit: function(event) { event.preventDefault(); var id = this.state.courses.length + 1, course = this.state.course; var course = { id: id, title: course.title, code: course.code, link: course.link, description: course.description, university: course.university, category: course.category, assignments: course.assignments || null, readings: course.readings || null, videos: course.videos || null, notes: course.notes || null } // add new course and set to blank var courses = this.state.courses.concat(course); this.setState({ courses: courses, course: this.getNewCourse() }); localStorage.setItem('courses', JSON.stringify(courses)); // page reload setTimeout(function() { location.reload() }, 500); }, handleChange: function(key, event) { var state = this.state.course; state[key] = event.target.value; this.setState(state); }, render: function() { var courses = JSON.stringify(this.state.courses, null, 2); var course = this.state.course; return (
{JSON.stringify(course, null, 2)}

          {courses}
        
) } }); React.render(
, document.getElementById('app'));