diff --git a/rickandmorty/src/components/Character.jsx b/rickandmorty/src/components/Character.jsx index 1300ed9..8bcc1d4 100644 --- a/rickandmorty/src/components/Character.jsx +++ b/rickandmorty/src/components/Character.jsx @@ -1,9 +1,25 @@ -function Character() { - return ( -
Character
- ) +function Character({ character }) { + return ( +
+
+ {character.name} +
+
+

{character.name}

+

Status:{character.status}

+

Species:{character.species}

+

Gender:{character.gender}

+

Location:{character.location.name}

+
+ +
+
+
+ ) } export default Character \ No newline at end of file diff --git a/rickandmorty/src/components/Characters.jsx b/rickandmorty/src/components/Characters.jsx index 3357951..8afc5d3 100644 --- a/rickandmorty/src/components/Characters.jsx +++ b/rickandmorty/src/components/Characters.jsx @@ -1,9 +1,71 @@ - +import { useState, useEffect } from "react" +import Character from "./Character"; function Characters() { - return ( -
Characters
- ) + const [characters, setCharacters] = useState([]); + const [info, setInfo] = useState({}); + const [page, setPage] = useState(1); + + const getCharacters = () => { + fetch(`https://rickandmortyapi.com/api/character?page=${page}`) + .then(res => res.json()) + .then(adatok => { + setCharacters(adatok.results); + setInfo(adatok.info); + }) + .catch(err => alert(err)); + } + + const asGetCharacters = async () => { + try { + let keres = await fetch(`https://rickandmortyapi.com/api/character?page=${page}`); + let adatok = await keres.json(); + setCharacters(adatok.results); + setInfo(adatok.info); + + } catch (error) { + alert(error); + } + } + + const tovabb = () => { + if (page < info.pages) { + setPage(prev => prev + 1); + } + + } + + const vissza = () => { + if (page > 1) { + setPage(prev => prev - 1); + } + + } + + useEffect(() => { + getCharacters(); + }, [page]) + + return ( +
+

Characters

+
+ + + +
+
+ { + characters.map((character) => ()) + } +
+
+ + + +
+
+ ) } export default Characters \ No newline at end of file diff --git a/rickandmorty/src/components/Main.jsx b/rickandmorty/src/components/Main.jsx index 0fe20d0..aa76fb2 100644 --- a/rickandmorty/src/components/Main.jsx +++ b/rickandmorty/src/components/Main.jsx @@ -1,9 +1,25 @@ function Main() { - return ( -
Main
- ) + return ( +
+
+ Rick and Morty API +
+

Rick and Morty API

+

+ Provident cupiditate voluptatem et in. Quaerat fugiat ut assumenda excepturi exercitationem + quasi. In deleniti eaque aut repudiandae et a id nisi. +

+ +
+
+
+ ) } export default Main \ No newline at end of file