Я учусь запрашивать данные с помощью GraphQL прямо сейчас.Хотя я могу запрашивать статьи блога на своем сайте Gatsby с доступной встроенной конфигурацией, у меня возникают проблемы при создании запроса к github для получения данных из моего репозитория.Мой код ниже.Я получаю сообщение об ошибке gatsby develop
:
Неизвестное поле 'repositoryOwner' для типа 'Запрос'.
Я подтвердил, что получаю действительноеответ в githubs graphiql explorer и о том, что он возвращает массив 'ребер' обратно.Я использую последнюю версию gatsby и реагирую с минимальным изменением конфигурации gatsby, чтобы включить только мой токен github.Я запускаю gatsby clean
перед каждой сборкой.
компонент githubProjects
export const Projects = () => (
<StaticQuery
query={graphql`
{
repositoryOwner(login: "my_github_name") {
repositories(first: 8, orderBy: {field: STARGAZERS, direction: DESC}) {
edges {
node {
id
name
url
description
}
}
}
}
}
`}
render={({
repositoryOwner: {
repositories: { edges },
},
}) => (
<div className="container with-title">
<p className="title">Projects</p>
{edges.map(({ node }) => (
<section className="container with-card">
<h4>{node.name}</h4>
<p>{node.description}</p>
</section>
))}
</div>
)}
/>
)
В моем gatsby-config.js есть следующие фрагменты:
const path = require('path')
require('dotenv').config({
path: `.env.${process.env.NODE_ENV}`,
module.exports = {
plugins: [
{
resolve: 'gatsby-source-graphql',
options: {
typeName: 'GitHub',
fieldName: 'github',
url: 'https://api.github.com/graphql',
headers: {
Authorization: `bearer ${process.env.GITHUB_TOKEN}`,
},
fetchOptions: {},
},
},
],
}
})
.env.development
GITHUB_TOKEN=XXXXXXXXXXXXXXXXXXXX