StaticQuery Gatsby 麻烦

问题描述

我正在按如下方式运行 StaticQuery:

Main Activity

但我收到以下错误,即使我相信我的 graphQL 查询是准确的,因为它在 IDE 中工作

    <StaticQuery query={graphql`
query MyQuery {
  allwordpressWpApiMenusMenusItems {
    edges {
      node {
        id
        name
        items {
          title
          object_slug
        }
      }
    }
  }
}
  `} render={data => (

      {data.allwordpressWpApiMenusMenusItems}
    //   {props.allwordpressWpApiMenusMenusItems.edges[0].node.items.map(
    //       item => (
    //          <div to={`/${item.object_slug}`} key={item.title}>
    //               {item.title}
    //          </div> 
    //       )
    //   )}
  )} />

有谁知道为什么会发生这种情况/我可以做些什么来解决

谢谢

解决方法

StaticQuery 正在渲染一个组件,因此它需要一个有效的表达式。您需要将语句包装在某物内。

    <StaticQuery query={graphql`
query MyQuery {
  allWordpressWpApiMenusMenusItems {
    edges {
      node {
        id
        name
        items {
          title
          object_slug
        }
      }
    }
  }
}
  `} render={data => {
      return <div>
      {data.allWordpressWpApiMenusMenusItems}
       {props.allWordpressWpApiMenusMenusItems.edges[0].node.items.map(
           item => (
              <div to={`/${item.object_slug}`} key={item.title}>
                   {item.title}
              </div> 
           )
       )}
    </div>
  }} />