解决单图Instagram帖子中items.map is not a function报错问题
解决Instagram帖子单图场景下
items.map is not a function报错问题 问题根源:单图帖子返回的data.media是字符串类型,而多图帖子返回的是数组类型。map是数组专属方法,字符串调用该方法会直接抛出报错。
解决思路:先将items统一转换为数组格式,确保无论单图还是多图场景,都能正常调用map方法。
修改后的完整代码:
const data = get(`${url}`) console.log(data) // 统一将media转为数组格式 const items = Array.isArray(data.media) ? data.media : [data.media]; 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)
额外修正:原代码中的模板字符串使用了单引号('video${index}.mp4'),这会导致变量index无法被解析,需改为反引号(`video${index}.mp4`)才能正常渲染变量。
内容的提问来源于stack exchange,提问作者Alejo Rios
相关产品推荐
相关产品推荐

