Así que estoy tratando de obtener publicaciones instantáneas por url
Este es mi código:
datos constantes = get('${url}'})
consola.log(datos)
Datos que obtengo en la consola (publicación con solo 1 imagen):
[ { media: "example.com" } ]
elementos const = data.media
así que el problema está aquí:
const Post_MP4 = items.map((item, index) => { if(item && item.includes(".mp4")) return ({name: 'video${index}.mp4', attachment: item}) else if(item && item.includes(".jpg")) return ({name: 'image${index}.jpg', attachment: item}) }).filter(item => item)
Cuando la publicación instantánea tiene solo 1 imagen, aparece un error (items.map no es una función), pero cuando la publicación tiene más de 1 imagen, no aparece ningún error.
Datos cuando la publicación tiene más de 1 imagen:
{ media: ["example", "example2"] }
¿Qué puedo hacer para no obtener ningún error al usar este código? Gracias.
El método de map
se utilizará en una matriz. Cuando solo hay una imagen, devuelve una cadena, que no tiene el método de matriz. Pero cuando hay más de uno, devuelve una matriz que de hecho tiene el método de map
. Como se menciona en los comentarios, verifique si media
son una matriz con el método isArray
.
El "Error de tipo: el mapa no es una función" ocurre cuando llamamos al método map() en un objeto que no es una matriz. Para resolver el error, console.log el valor al que está llamando el método map() y asegúrese de llamar al método map solo en matrices válidas.