Aller au contenu principal
Wadifa InfoEmploi public au Maroc ع
Combien toucherez-vous vraiment ? Ratibi calcule votre salaire net Calculer →
TP 5 pages PDF · 723 Ko

seance11 2 tp

On souhaite afficher pour chaque user les posts qu’il a effectué

Filière : Divers

📥 Télécharger le PDF (723 Ko)

Document non officiel partagé entre stagiaires, non vérifié par Wadifa.

Première page : seance11 2 tp
Première page du document
Concours et emplois ouverts aux diplômés OFPPT, sur WhatsApp dès leur parution

Aperçu du contenu

Extrait des premières pages, texte tiré du PDF. Le document complet (5 pages) est dans le PDF.

Un user peut avoir plusieurs posts Par exemple le user dont le id est égal à 1 a deux posts, en effet la valeur des userId dans post est égal à 1.

Créer l’application React qui affiche les users, pour chaque user on peut afficher les détails posts si on clique sur le button ‘détails posts’ Solution : App.js import React, { useEffect, useState } from "react"; import axios from "axios"; import ListUser from "./components/ListUser"; export default function App() { const [utilisateurs, setUtilisateurs] = useState([]); useEffect(() => { const getData = async () => { const users = await axios.get(

return ( <div> {utilisateurs? (<div> <ListUser utilisateurs={utilisateurs} /> </div>): "pas d'utilisateurs!!!!"} </div>

ListUser.js import React, { useState } from "react"; import User from "./User"; export default function ListUser(props){ const [activeId,setActiveId]=useState(1) const users=props.utilisateurs function handleChangeActiveId(id){ setActiveId(id)

return(<div className="App" > <h1>nombre d'utilisateurs: {props.utilisateurs.length}</h1> {users.map(user=>{ return(<User user={user} activeId={activeId} handleChangeActiveId={handleChangeActiveId}/>)

import React, { useState } from "react"; import axios from 'axios' export default function User(props){ const [posts,setPosts]=useState([]) function HandelPosts(){ const getData = async () => { const posts = await axios.get( "https://jsonplaceholder.typicode.com/posts"

return(<div className="child" key={props.user.id}> <h3>nom: {props.user.name} {props.user.username}</h3> <p>email:{props.user.email}</p> <p> ville:{props.user.address.city} rue:{props.user.address.street} </p> <button onClick={HandelPosts}>details posts</button> {props.activeId==props.user.id &&( <div> <h5 style={{color:"green"}}>nombre des posts: {posts.length}</h5> {posts.map(post=>{ return(<div className="post" key={post.id}> <h5>{post.title}</h5> <p>{post.body}</p>

📥 Télécharger le document complet (PDF · 723 Ko)

Autres documents de la filière Divers

Tous les documents Divers →

⚑ Signaler un problème avec ce document

Toutes les filières

Document pédagogique de la formation professionnelle, partagé pour les stagiaires. Les supports officiels de votre promotion restent ceux de votre formateur et d'OFPPT Academy. Ce document vous appartient ou doit être retiré ? Écrivez à [email protected], il sera retiré sous 48 h.

📲
Installez Wadifa Info sur votre iPhone : appuyez sur le bouton Partager en bas de Safari, puis sur Sur l'écran d'accueil. Les nouveaux concours, sans passer par le navigateur.