import Link from "next/link"; // Fonction pour récupérer toutes les compétences depuis l'API Strapi async function getAllCompetences() { try { const response = await fetch("http://localhost:1337/api/competences?populate=*"); if (!response.ok) { throw new Error("Failed to fetch competences"); } const competences = await response.json(); return competences.data; } catch (error) { console.error("Error fetching competences:", error); return []; } } // Composant principal de la page des compétences export default async function Page() { const competences = await getAllCompetences(); return (
{/* Titre de la page */}

Mes Compétences

{/* Grille pour afficher les compétences */}
{competences.map((competence) => { const picture = competence.picture?.[0]; // Récupère la première image si elle existe const largeImageUrl = picture?.formats?.large?.url; // Vérifie que le format "large" existe const originalImageUrl = picture?.url; // URL de l'image originale // Utilisez l'URL de l'image originale si disponible, sinon l'URL de l'image large const imageUrl = originalImageUrl ? `http://localhost:1337${originalImageUrl}` : `http://localhost:1337${largeImageUrl}`; return (
{/* Lien vers la page de détail de la compétence */}
{/* Affichage de l'image de la compétence */} {imageUrl ? ( {picture?.name ) : (
Image indisponible
)}
{/* Affichage du nom de la compétence */}

{competence.name}

{/* Affichage de la description de la compétence */}

{competence.description}

); })}
); }