Я пытался создать небольшой сайт с использованием GatsbyJS с защищенным контентом с использованием Firebase, следуя этому примеру: https://github.com/taming-the-state-in-react/gatsby-firebase-authentication. Я использую DatoCMS в качестве источника. Раньше я создавал блоги, где все было одинаково, за исключением части проверки подлинности Firebase, и все работало отлично.
Почему-то я получаю сообщение об ошибке определения данных внутри моего файла шаблона, из которого сгенерированы страницы статей.
Вот мой код:
import React from 'react'
import AuthUserContext from '../components/Session/AuthUserContext';
import withAuthorization from '../components/Session/withAuthorization';
import { graphql } from 'gatsby';
const authCondition = authUser => !!authUser;
const WikiPageSingle = withAuthorization(authCondition)(() => (
<AuthUserContext.Consumer>
{authUser => (
<div>
<h1>{this.props.data.datoCmsArticle.id}</h1>
</div>
)}
</AuthUserContext.Consumer>
))
export default withAuthorization(authCondition)(WikiPageSingle);
export const query = graphql`
query ArticlQuery ($slug: String!) {
datoCmsArticle (slug: { eq: $slug }) {
id
title
slug
}
}
`;
Я знаю, что может быть трудно получить помощь по этому вопросу, поскольку это своего рода очень специфическая проблема, но любые идеи или указания, почему это не сработает с файлом шаблона, будут высоко оценены!