السلام عليكم.
أنا بصدد القيام ببرنامج بحث عن بوكيمونات و ذلك بواسطة fetchAPI ،
let url= "https://pokeapi.co/api/v2/pokemon?limit=200"
function fetchPoke (){
fetch(url)
.then(res => res.json())
.then((allPoke) =>{
// console.log(allPoke)
allPoke.results.forEach((pokemon) => {
fetchPokeFull(pokemon)
// console.log(pokemon.url)
});
})
}
fetchPoke()
function fetchPokeFull(pokemon){
let urlP = pokemon.url
let nameP = pokemon.name
let objPokemonFull = {}
console.log(urlP);
fetch(urlP)
.then( resP => resP.json())
.then((pokeData) =>{
// console.log(pokeData)
objPokemonFull.pic = pokeData.sprites.front_default //صورة البوكيمون
// console.log(objPokemonFull.pic);
objPokemonFull.type = pokeData.types[0].type.name //نوع البوكيمون
// console.log(objPokemonFull.type);
fetch(`https://pokeapi.co/api/v2/pokemon-species/${nameP}`)
.then(re => re.json())
.then((pokeData) =>{
// console.log(pokeData)
objPokemonFull.name = pokeData.names[8].name //إختيار اللغة الإنجليزية لأسماء البوكيمون (العربية غير متوفرة)
allPokemon.push(objPokemonFull)
if (allPokemon.length == 200){
console.log(allPokemon);
}
})
})
}
fetchPokeFull()
console يظهر لي خطأ في عدم معرفة متغير لكن الكود يعمل بشكل جيد
Uncaught TypeError: Cannot read properties of undefined (reading 'url')
at fetchPokeFull (script.js:36:34)
at script.js:65:1
شكرا مسبقا. أعتقد أن الخطأ عند مناداة fetchPokeFull