如何在StaticQuery中使用导出默认的injectIntl​​(className)?

时间:2019-05-14 16:33:01

标签: reactjs graphql gatsby

我对GraphQL有问题。 我编写了这些代码,以将标题和描述传递给课程CourseDetails,并成功获取数据。

export default () => (
  <StaticQuery
    query={graphql`
      query {
        allCourseDataDetailsJson {
          edges {
            node {
              en {
                sectionHeroBanner {
                  title
                  description
                }
              }
              vi {
                sectionHeroBanner {
                  title
                  description
                }
              }
            }
          }
        }
      }
    `}
    render={data => (
      <CourseDetails
        title={
          data.allCourseDataDetailsJson.edges[0].node[`en`].sectionHeroBanner
            .title
        }
        description={
          data.allCourseDataDetailsJson.edges[0].node[`en`].sectionHeroBanner
            .description
        }
      />
    )}
  />
)

但是,当我尝试使用gatsby-plugin-inlt添加i18n时,无论如何我都找不到将injectIntl添加到此CourseDetails类的方法。 通常,我可以像这样添加它:

export default injectIntl(CourseDetails)

所以我可以使用intl.locale处理i18n。但是现在,有了GraphQL,它变成了export default () => (<StaticQuery /> ),就像上面一样。 在这种情况下如何添加injectIntl​​?

0 个答案:

没有答案