Я пытаюсь получить в свои руки Gatsby + Strapi разработка (добавление материала для стайлинга), я новичок в Gatsby и Strapi, хотя у меня есть некоторые базовые c знания React и это облегчает путь. Я использую Gatsby Starter : https://www.gatsbyjs.org/starters/Vagr9K/gatsby-material-starter/, который включает в себя дизайн материала, который я пытаюсь достичь, но у меня возникают некоторые проблемы при изменении запросов Markdown на Strapi запрашивает , чтобы не вносить много изменений в код (записи точно такие же, но хранятся в Strapi). У меня есть три типа контента в Strapi, соответствующие трем различным страницам, которые предоставляет первоначальный стартер: Публикация , Категория и Метка .
This исходный запрос графа MarkdownRemark включен в шаблон post.jsx :
query BlogPostBySlug($slug: String!) {
markdownRemark(fields: { slug: { eq: $slug } }) {
html
timeToRead
excerpt
frontmatter {
title
cover
date
category
tags
}
fields {
slug
date
}
}
}
Как я могу изменить его для получения той же информации из Strapi? Я действительно новичок в этом мире Strapi, поэтому у меня много сомнений в GraphQL, так как я не могу следовать руководству по запросу Markdown, потому что отображаемая информация не совпадает.
I У меня также возникают проблемы с различием между allStrapiArticle и StrapiArticle, какова основная цель этих?
РЕДАКТИРОВАТЬ: я проверял существующие запросы на GraphiQL , чтобы проверить, что они возвращают, и это Вот что я вижу:
Для запроса tag.jsx :
query TagPage($tag: String) {
allMarkdownRemark(
limit: 1000
sort: { fields: [fields___date], order: DESC }
filter: { frontmatter: { tags: { in: [$tag] } } }
) {
totalCount
edges {
node {
fields {
slug
date
}
excerpt
timeToRead
frontmatter {
title
tags
cover
date
}
}
}
}
}
GraphiQL ничего не возвращает:
{
"data": {
"allMarkdownRemark": {
"totalCount": 0,
"edges": []
}
}
}
Для category.jsx запрос:
query CategoryPage($category: String) {
allMarkdownRemark(
limit: 1000
sort: { fields: [fields___date], order: DESC }
filter: { frontmatter: { category: { eq: $category } } }
) {
totalCount
edges {
node {
fields {
slug
date
}
excerpt
timeToRead
frontmatter {
title
tags
cover
date
}
}
}
}
}
В этом случае все работает нормально, и он получает данные статьи.
И для случая запроса, который я добавил В качестве примера в этом сообщении (верхняя часть вопроса) я получаю следующую ошибку:
"errors": [
{
"message": "Variable \"$slug\" of required type \"String!\" was not provided."
...