Recherche de Pokémon
Guides prérequis
Maintenant que tu maîtrises les bases de JavaScript, nous allons combiner tout ce que tu as appris pour créer un moteur de recherche de Pokémon ! Ce projet va te permettre de mettre en pratique :
- L’écoute de l’événement de clic sur un bouton,
- La récupération de la valeur du champ de texte dans une variable,
- L’utilisation d’une API (PokéAPI),
- La manipulation de l’objet renvoyé par l’API, contenant les données du Pokémon,
- La modification du HTML pour afficher les résultats.
pikachu, charizard, bulbasaurDécouvrir PokéAPI
PokéAPI est une API gratuite qui fournit des informations sur tous les Pokémon. Pour récupérer les données d’un Pokémon, il suffit d’envoyer une requête à l’URL suivante, en changeant le nom du Pokémon :
https://pokeapi.co/api/v2/pokemon/pikachuÀ toi de jouer !
- Exécute le code pour voir les données de Pikachu dans la console.
- L’objet contient énormément d’informations ! Tu peux afficher uniquement le nom (
pokemon.name) et le poids (pokemon.weight). - Essaie de remplacer « pikachu » par « ditto » ou « mewtwo » pour obtenir d’autres Pokémon.
Récupérer l’entrée de l’utilisateur
Pour créer une recherche, nous avons besoin d’un champ de texte où l’utilisateur peut taper le nom du Pokémon, et d’un bouton pour lancer la recherche.
<input type="text" id="pokemon-input" placeholder="Nom du Pokémon" /><button id="search-button">Rechercher</button><div id="result"></div>En JavaScript, on peut récupérer la valeur du champ de texte avec la propriété value :
const input = document.getElementById("pokemon-input")const button = document.getElementById("search-button")const result = document.getElementById("result")
button.addEventListener("click", async () => { const pokemonName = input.value console.log("Recherche de : " + pokemonName)})À toi de jouer !
Essaie d’ajouter cette fonctionnalité dans l’éditeur ci-dessous. Tape un nom dans le champ et vérifie que la console affiche bien le nom que tu as entré.
Afficher les informations du Pokémon
Maintenant, utilisons la valeur saisie pour faire une requête à l’API et afficher les informations du Pokémon.
À toi de jouer !
- Dans l’event listener, utilise
fetchpour récupérer les données du Pokémon en utilisant la variablepokemonName. - Convertis la réponse en objet avec
response.json(). - Utilise
result.innerHTMLpour afficher le nom et le poids du Pokémon. - Teste avec différents noms : pikachu, ditto, mewtwo…
Afficher l’image du Pokémon
Les données du Pokémon contiennent également une image ! Elle se trouve dans pokemon.sprites.front_default. Ajoutons-la à notre affichage :
result.innerHTML = "<h3>" + pokemon.name + "</h3>" + '<img src="' + pokemon.sprites.front_default + '" />' + "<p>Poids : " + pokemon.weight + "</p>"À toi de jouer !
Ajoute l’image du Pokémon dans le code précédent. Tu peux également afficher d’autres informations comme la taille (pokemon.height) ou les types (pokemon.types).
Félicitations ! Tu as créé ton premier projet JavaScript complet. Tu peux maintenant réutiliser ces connaissances pour créer d’autres projets : une application météo, un convertisseur de devises, un jeu de quiz… Les possibilités sont infinies ! 🎉