GatsbyJS:是否可以在layouts文件夹中创建的组件内查询?

时间:2018-02-02 01:50:03

标签: javascript reactjs graphql graphql-js gatsby

我在layouts文件夹中创建了一个组件,并尝试使用查询从内容中获取信息。我的代码与我在pages文件夹中的另一个工作组件中使用的代码完全相同。但是,layouts文件夹中的那个不起作用; this.props.data控制台记录为未定义。

对于layouts文件夹中的组件,是否有一些特殊的查询方法?这里有什么我想念的吗?我已经阅读了我可以在GatsbyJS中的layouts文件夹中查询的内容......

这是layouts文件夹中我的组件的代码:

import React, { Component } from 'react'

export default class Header extends Component {
    render() {  
      return (
          my component code
  }

  export const headerQuery = graphql`
    query headerQuery {
        allContentfulBlogPost {
            edges {
                node {
                    postTitle
                    postDate
                }
            }
            totalCount
        }
    }
`

1 个答案:

答案 0 :(得分:0)

评论中涵盖了答案。

没有

仅通过页面或布局中的查询将数据传递给Gatsby中的组件。这个单点入口允许Gatsby将您的数据编译为磁盘上的静态JSON文件,并预取数据等。