مرحبا جميعا. محاولة ربط المحتوى بمدونة باستخدام المبدئ المتقدم. لقد قمت بسحب المكونات الإضافية لنظام الملفات من المزيج وأنا أحاول فقط سحب عينة من المنشور. ومع ذلك ، أتلقى حاليًا خطأ GraphQL Error Unknown argument slug
عند بدء تشغيل خادم التطوير.
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)
})
}
لدي سياق محدد ليشمل "slug" والذي ، إذا فهمت بشكل صحيح ، هو المكان الذي يصبح فيه متاحًا لاستعلام GraphQL لمكون المنشور الفعلي ... ولكنه يلقي بالخطأ.
إليك بعض مخرجات وحدة التحكم الخاصة بي حيث يحدث هذا
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
...
أنا جديد تمامًا على GraphQL لذا فقد أفتقد شيئًا واضحًا هنا. أي شيء خارج عن المألوف مما تراه هنا؟ شكرا للبحث!
من الممكن أن العقدة لا تحتوي على سبيكة ربما؟
في يوم الأحد ، 10 سبتمبر 2017 ، الساعة 7:17 صباحًا ، كتب Josh Weaver [email protected] :
مرحبا جميعا. محاولة ربط المحتوى بمدونة باستخدام المستوى المتقدم
بداية. لقد سحبت المكونات الإضافية لنظام الملفات من المزيج وأنا أحاول
لمجرد سحب عينة من المنشور. ومع ذلك ، فأنا أحصل حاليًا على ملف
خطأ GraphQL خطأ غير معروف سبيكة وسيطة عند بدء تطوير الخادم.export.createPages = ({graphql، boundActionCreators}) => {
const {createPage} = boundActionCreators
إرجاع الوعد الجديد ((حل ، رفض) => {
رسم بياني (
{ allContentfulBlogPost(limit: 1000) { edges { node { id slug } } } }
)
ثم (النتيجة => {
إذا (نتيجة أخطاء) {
رفض (نتيجة أخطاء)
}
const postPage = path.resolve ("src / قوالب / 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)
})
}لدي سياق تم تعيينه ليشمل "slug" والتي ، إذا فهمت بشكل صحيح ، هي
حيث تصبح متاحة لاستعلام الرسم البياني لمكون المشاركة الفعلي ...
لكنها تلقي بالخطأ.
إليك بعض مخرجات وحدة التحكم الخاصة بي حيث يحدث هذاإحضار بيانات مضمون: 404.350 مللي ثانية
مصدر النجاح وتحويل العقد - 0.552 ثانية
مخطط بناء النجاح - 0.548 ثانية
نجاح إنشاء التخطيطات - 0.055 ثانية
⠁ /xxxxxxx/src/templates/post.jsx
{id: 'c7juaTIcg6cW2wAGKCQuios'، slug: 'test-post'}
نجاح createPages - 0.061 ثانية
نجاح createPagesStatefully - 0.023 ثانية
خطأ GraphQL وسيطة غير معروفةslug
ملف: /Users/joshuaweaver/Documents/JoyfulNoise/joyfulnoiseliving/src/templates/post.jsx
1 |
2 | الاستعلام BlogPostBySlug ($ slug: String!) {3 | allContentfulBlogPost (slug: {eq: $ slug}) {
| ^
4 | لقب
5 | سبيكة
...أنا جديد تمامًا على GraphQL لذا فقد أفتقد شيئًا واضحًا هنا.
-
أنت تتلقى هذا لأنك مشترك في هذا الموضوع.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/gatsbyjs/gatsby/issues/2069 ، أو كتم صوت الموضوع
https://github.com/notifications/unsubscribe-auth/AAEVh7fahni3VfI4tz_PphtJPctw2jV5ks5sg2LWgaJpZM4PSM2E
.
حسنًا ، لم يكن لدي سوى عقدة / مشاركة واحدة في Contentful.
حسنًا .. انتهى بي الأمر بتغيير الاستعلام أثناء تشغيله من allContentfulBlogPost
إلى contentfulBlogPost
وهو يعمل الآن ... ولكن لكوني جديدًا جدًا على GraphQL ، لست متأكدًا من أنني أفهم فرق.
حسنًا ، نعم ، هذا الاستعلام لم يكن لينجح. تأكد من تجربة استفساراتك في Graph i QL قبل إضافتها إلى مكوناتك.
"الكل" للاستعلام عن جميع العقد من نوع ما. بدون كل شيء للاستعلام عن عنصر واحد.
التعليق الأكثر فائدة
حسنًا ، نعم ، هذا الاستعلام لم يكن لينجح. تأكد من تجربة استفساراتك في Graph i QL قبل إضافتها إلى مكوناتك.
"الكل" للاستعلام عن جميع العقد من نوع ما. بدون كل شيء للاستعلام عن عنصر واحد.