代码之家  ›  专栏  ›  技术社区  ›  StackUnderFlow

类型错误:无法读取未定义的属性“image”-react&gatsby

  •  0
  • StackUnderFlow  · 技术社区  · 5 年前

    我目前正在尝试从我的React应用程序的Contentful中提取一些数据,并继续获取此类型错误:无法读取未定义的属性“image”。

    似乎不明白我为什么要这么做。

    这是我的查询组件-只是尝试输入文件名:

    import React from 'react'
    import { StaticQuery, graphql } from 'gatsby'
    
    export default () => (
      <StaticQuery
        query={graphql`
          query FileQuery {
            allContentfulImage {
              edges {
                node {
                  image {
                    file {
                      fileName
                    }
                  }
                }
              }
            }
          }
        `}
        render={data => (
          <div>
            <h1>{data.allContentfulImage.edges.node.image.file.fileName}</h1>
          </div>
        )}
      />
    )
    
    1 回复  |  直到 5 年前
        1
  •  1
  •   Derek Nguyen    5 年前

    data.allContentfulImage.edges 包含对象数组,而不是对象数组。你可以试试:

    <h1>{data.allContentfulImage.edges[0].node.image.file.fileName}</h1>