Humberto Delgado
Juan Camilo Lentino Villalba
Kenneth Angulo L
Moises Hernandez
Jose Ever Muñoz Muñoz
JSONview - una extensión descárguenlo en su navegador para que pueden ver la API ordenada para mejor entendimiento
JSON Viewer también es muy buena https://chrome.google.com/webstore/detail/json-viewer/gbmdgpbipfallnflgajpaliibnhdgobh?hl=es
¿Por qué usar join al crear templates?
Cuando utilizas el método .map() para iterar sobre un arreglo de datos y generar bloques de HTML (como tarjetas de productos), el resultado final sigue siendo un arreglo de cadenas de texto. Si intentas insertar ese arreglo directamente en el DOM usando innerHTML, JavaScript automáticamente lo convertirá a texto, separando cada elemento con una coma. Visualmente, esto se traduce en comas molestas renderizadas en la pantalla de tu aplicación entre cada producto. Al encadenar el método .join('') al final de tu iteración, estás uniendo todos los elementos del arreglo en un único y continuo bloque de texto HTML, reemplazando el separador por defecto (la coma) por un espacio vacío. Es un paso pequeño pero crucial para garantizar que tu interfaz de usuario se vea profesional y limpia.
Parece que la api de platzi no deja mostrar las imágenes de los productos. Una alternativa es usar fake api:
el código solo cambiaríamos la url e images por image:
const $app = document.getElementById("app"); const API = "https://fakestoreapi.com/products?pffset=0&limit=10"; const main = async () => { const response = await fetch(API); const products = await response.json(); const output = products?.map((product) => { return ` <article class="Card"> <img src="${product.image}" alt="Image"> <h2> ${product.title} <small>Precio $ ${product.price}</small> </h2> </article> `; }).join(""); let newItem = document.createElement("section"); newItem.classList.add("Items"); newItem.innerHTML = output; $app.appendChild(newItem); } main();
¿qué extensión usa para que se autocomplete el código html dentro de las comillas literales?