diff --git a/client/src/App.js b/client/src/App.js index 048a1923..2f54dcf7 100644 --- a/client/src/App.js +++ b/client/src/App.js @@ -1,62 +1,64 @@ import React, { useEffect, useState } from "react"; import { Route, Switch, Redirect } from "react-router-dom"; -import MovieList from './components/MovieList'; -import Movie from './components/Movie'; +import MovieList from "./components/MovieList"; +import Movie from "./components/Movie"; -import MovieHeader from './components/MovieHeader'; +import MovieHeader from "./components/MovieHeader"; -import EditMovieForm from './components/EditMovieForm'; -import FavoriteMovieList from './components/FavoriteMovieList'; +import EditMovieForm from "./components/EditMovieForm"; +import FavoriteMovieList from "./components/FavoriteMovieList"; -import axios from 'axios'; +import axios from "axios"; const App = (props) => { const [movies, setMovies] = useState([]); const [favoriteMovies, setFavoriteMovies] = useState([]); - useEffect(()=>{ - axios.get('http://localhost:5000/api/movies') - .then(res => { + useEffect(() => { + axios + .get("http://localhost:5000/api/movies") + .then((res) => { setMovies(res.data); }) - .catch(err => { + .catch((err) => { console.log(err); }); }, []); - const deleteMovie = (id)=> { - } + const deleteMovie = (id) => {}; - const addToFavorites = (movie) => { - - } + const addToFavorites = (movie) => {}; return (
- +
- - + + + - + - + - +
@@ -65,6 +67,4 @@ const App = (props) => { ); }; - export default App; - diff --git a/client/src/components/EditMovieForm.js b/client/src/components/EditMovieForm.js index 9c058388..09332966 100644 --- a/client/src/components/EditMovieForm.js +++ b/client/src/components/EditMovieForm.js @@ -1,70 +1,121 @@ -import React, { useState, useEffect } from 'react'; -import { useParams, useHistory } from 'react-router-dom'; -import { Link } from 'react-router-dom'; +import React, { useState, useEffect } from "react"; +import { useParams, useHistory } from "react-router-dom"; +import { Link } from "react-router-dom"; -import axios from 'axios'; +import axios from "axios"; const EditMovieForm = (props) => { - const { push } = useHistory(); + const { id } = useParams(); + const { push } = useHistory(); - const [movie, setMovie] = useState({ - title:"", - director: "", - genre: "", - metascore: 0, - description: "" - }); - - const handleChange = (e) => { - setMovie({ - ...movie, - [e.target.name]: e.target.value - }); - } + const [movie, setMovie] = useState({ + title: "", + director: "", + genre: "", + metascore: 0, + description: "", + }); - const handleSubmit = (e) => { - e.preventDefault(); - } - - const { title, director, genre, metascore, description } = movie; + const handleChange = (e) => { + setMovie({ + ...movie, + [e.target.name]: e.target.value, + }); + }; + useEffect(() => { + axios + .get(`http://localhost:5000/api/movies/${id}`) + .then((res) => { + setMovie(res.data); + }) + .catch((err) => { + console.log(err.response); + }); + }, []); + const handleSubmit = (e) => { + e.preventDefault(); + axios + .put(`http://localhost:5000/api/movies/${id}`, movie) + .then((res) => { + console.log(res); + }) + .catch((err) => { + console.log(err.response); + }); + }; - return ( -
-
-
-
-

Editing {movie.title}

-
-
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
- -
-
- - -
-
-
-
); -} + const { title, director, genre, metascore, description } = movie; -export default EditMovieForm; \ No newline at end of file + return ( +
+
+
+
+

+ Editing {movie.title} +

+
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+ + + + +
+
+
+
+ ); +}; + +export default EditMovieForm;