Untitled
unknown
javascript
2 years ago
1.6 kB
6
Indexable
import React, { useEffect, useState } from "react"; import './App.css'; import SearchIcon from './search.svg'; import MovieCard from './components/MovieCard'; const API_URL = 'http://www.omdbapi.com/?i=tt3896198&apikey=3f6ec66d'; const App = () => { const [movies, setMovies] = useState([]); const [searchTerm, setSearchTerm] = useState(''); // Call API const searchMovies = async(title) => { const response = await fetch(`${API_URL}&s=${title}`); const data = await response.json(); setMovies(data.Search); } useEffect(() => { setMovies('Spiderman'); }, []); return( <div className="App"> <h1>MovieLand</h1> <div className="search"> <input placeholder="Search for movies..." value={searchTerm} onChange={(e) => setSearchTerm(e.target.value)} /> <img src={SearchIcon} alt="Search" onClick={() => searchMovies(searchTerm)} /> </div> {movies?.length > 0 ? ( <div className="container"> {movies.map((movie) => <MovieCard movie={movie} /> )} </div> ) : ( <div className="empty"> <h2>No Movies Found</h2> </div> ) } </div> ) } export default App;
Editor is loading...