首页 > 解决方案 > Array.map 中对象的属性不可用(未定义)

问题描述

我有一个“照片”对象的“照片”数组。每个“照片”对象都有一个图像 url 的属性值。

我尝试用 map() 迭代“照片”数组,以这种方式

photos.map((photo, index) => {
    console.log(photo)
    console.log(photo.value)
    return (
        <img
            key={index}
            src={photo.value}
            className={index === active ? 'active' : ''}
            alt="thumbnail"
        />
    )
})

由于某种我完全失踪的原因, photo.value 不可用。


这就是这两个 console.log 打印出来的内容:

控制台日志输出

似乎该对象可用,但随后“值”属性返回未定义。
这应该很简单,但我完全被困在这一点上。



这怎么可能?我在这里想念什么?

谢谢

标签: javascriptreactjsdictionaryiteratorundefined

解决方案


像这样访问值photo.photo.value

photos.map((photo, index) => {
    console.log(photo)
    console.log(photo.photo.value)
    return (
        <img
            key={index}
            src={photo.photo.value}
            className={index === active ? 'active' : ''}
            alt="thumbnail"
        />
    )
})

推荐阅读