Olá a todos. Tentando conectar conteúdo com um blog usando o iniciador avançado. Retirei os plug-ins do sistema de arquivos do mix e estou tentando puxar um exemplo de postagem. No entanto, estou recebendo um erro GraphQL Error Unknown argument slug
ao iniciar o servidor de desenvolvimento.
exports.createPages = ({ graphql, boundActionCreators }) => {
const { createPage } = boundActionCreators
return new Promise((resolve, reject) => {
graphql(
`
{
allContentfulBlogPost(limit: 1000) {
edges {
node {
id
slug
}
}
}
}
`
)
.then(result => {
if (result.errors) {
reject(result.errors)
}
const postPage = path.resolve("src/templates/post.jsx");
_.each(result.data.allContentfulBlogPost.edges, edge => {
console.log(edge.node);
createPage({
path: `/post/${edge.node.slug}`,
component: postPage,
context: {
id: edge.node.id,
slug: edge.node.slug
},
})
})
})
.then(resolve)
})
}
Eu tenho o contexto definido para incluir "slug" que, se bem entendi, é onde ele se torna disponível para a consulta de GraphQL pós-componente real ... mas está gerando o erro.
Aqui estão algumas das saídas do meu console onde isso acontece
Fetch Contentful data: 404.350ms
success source and transform nodes — 0.552 s
success building schema — 0.548 s
success createLayouts — 0.055 s
⠁ /xxxxxxx/src/templates/post.jsx
{ id: 'c7juaTIcg6cW2wAGKCQuios', slug: 'test-post' }
success createPages — 0.061 s
success createPagesStatefully — 0.023 s
GraphQL Error Unknown argument `slug`
file: /Users/joshuaweaver/Documents/JoyfulNoise/joyfulnoiseliving/src/templates/post.jsx
1 |
2 | query BlogPostBySlug($slug: String!) {
> 3 | allContentfulBlogPost(slug: { eq: $slug }) {
| ^
4 | title
5 | slug
...
Eu sou muito novo no GraphQL, então pode estar faltando algo óbvio aqui. Algo fora do comum pelo que você pode ver aqui? Obrigado por olhar!
É possível que um nó não tenha um slug, talvez?
No domingo, 10 de setembro de 2017, 7h17, Josh Weaver [email protected] escreveu:
Olá a todos. Tentando conectar conteúdo a um blog usando o avançado
iniciante. Retirei os plug-ins do sistema de arquivos do mix e estou tentando
apenas para puxar uma amostra de postagem. No entanto, atualmente estou recebendo um
erro GraphQL Error Slug de argumento desconhecido ao iniciar o servidor de desenvolvimento.exportações.createPages = ({graphql, boundActionCreators}) => {
const {createPage} = boundActionCreators
retornar nova promessa ((resolver, rejeitar) => {
graphql (
{ allContentfulBlogPost(limit: 1000) { edges { node { id slug } } } }
)
.então (resultado => {
if (result.errors) {
rejeitar (result.errors)
}
const postPage = path.resolve ("src / templates / post.jsx");
_.each (result.data.allContentfulBlogPost.edges, edge => {
console.log (edge.node);createPage({ path: `/post/${edge.node.slug}`, component: postPage, context: { id: edge.node.id, slug: edge.node.slug }, }) }) }) .then(resolve)
})
}Eu tenho o contexto definido para incluir "slug" que, se bem entendi, é
onde ele se torna disponível para a consulta de gráfico SQL pós-componente real ...
mas está gerando o erro.
Aqui estão algumas das saídas do meu console onde isso aconteceObter dados de conteúdo: 404.350 ms
fonte de sucesso e nós de transformação - 0,552 s
esquema de construção de sucesso - 0,548 s
sucesso na criação de layouts - 0,055 s
⠁ /xxxxxxx/src/templates/post.jsx
{id: 'c7juaTIcg6cW2wAGKCQuios', slug: 'post de teste'}
sucesso na criação de páginas - 0,061 s
sucesso createPagesStatefully - 0,023 s
Erro GraphQL Argumento desconhecidoslug
arquivo: /Users/joshuaweaver/Documents/JoyfulNoise/joyfulnoiseliving/src/templates/post.jsx
1
2 | query BlogPostBySlug ($ slug: String!) {3 | allContentfulBlogPost (slug: {eq: $ slug}) {
| ^
4 título
5 | lesma
...Eu sou muito novo no GraphQL, então pode estar faltando algo óbvio aqui.
-
Você está recebendo isto porque está inscrito neste tópico.
Responda a este e-mail diretamente, visualize-o no GitHub
https://github.com/gatsbyjs/gatsby/issues/2069 ou silencie a conversa
https://github.com/notifications/unsubscribe-auth/AAEVh7fahni3VfI4tz_PphtJPctw2jV5ks5sg2LWgaJpZM4PSM2E
.
Bem, eu só tinha um nó / postagem no Contentful.
Hmm .. Acabei mudando a consulta enquanto ela estava em execução de allContentfulBlogPost
para contentfulBlogPost
e funciona agora ... Mas, sendo tão novo no GraphQL, não tenho certeza se entendi o diferença.
Ah, certo, sim, essa consulta não teria funcionado. Certifique-se de testar suas consultas no Graph i QL antes de adicioná-las aos seus componentes.
"all" serve para consultar todos os nós de um tipo. Sem tudo é para consultar um único item.
Comentários muito úteis
Ah, certo, sim, essa consulta não teria funcionado. Certifique-se de testar suas consultas no Graph i QL antes de adicioná-las aos seus componentes.
"all" serve para consultar todos os nós de um tipo. Sem tudo é para consultar um único item.