December 27, 2022 5:40 PM (CST)
Aportes
Curso ECMAScript | [26. **ES11: optional chaining**](<https://pogolo.notion.site/26-ES11-optional-chaining-8c6ef78b97dc426082719a472cf90c79>)
More about XML | Retro
Video YT **API | Carlos Azaustre**
Aporte Traspaginal | Aquí y Allá
**Características del API Platzi (Only 5 :o)**
**Video YT Freddy Teen | AJAX | XML**
Soluciones con .js ⇒ .cjs
, require ⇒ import
<aside>
💡 En está clase en construye el toda lo que hará la función *fetchData*
</aside>
El deseo al terminar esta clase
Poner en practica nuestra función la cual recibe un callback que se encarga de entregar el error o la data que obtiene al hacer la petición al API
function fetchData(urlApi, callback){
}
fetchData(`${API}/products`, function(error1, data1) {
}
Como anidar múltiples llamadas dentro de este callback.
Obvio porque el callback es una función anónima donde se puede invocar la función fetchData de nuevo.
Lo que queremos hacer es solicitar información a la API de Platzi, que es un E-Commerce.
Una llamada a todos los productos, a un producto en particular, el nombre de la categoría a la que pertenece el producto particular y mostrar esta información al finalizar al solicitudes que le haremos al servidor.
En el archivo challenge.js se agrega el siguiente código:
fetchData(`${API}/products`, function (error1, data1) {
if (error1) return console.error(error1);
fetchData (`${API}/products/${data1[2].id}`, function(error2, data2){
if(error2) return console.error(error2);
fetchData(`${API}/categories/${data2?.category?.id}`, function(error3, data3){
if(error3) return console.error(error3);
console.log(data1[2]);
console.log(data2.title);
console.log(data3.name);
});
});
});