【发布时间】:2022-01-19 13:52:12
【问题描述】:
我想创建一个类别页面。我正在使用 Gatsby.js、GraphQL 和 Strapi。 可能过滤器不起作用。 但是不知道怎么解决。
{strapiCategory.slug}.js
import * as React from "react";
import { graphql } from "gatsby";
import { Helmet } from "react-helmet";
import Layout from "../../components/Layout";
import PostList from "../../components/PostList";
import *as styles from "./{MicrocmsCategory.slug}.module.css";
const CategoryPage = (props) => {
const categories = props.data.strapiCategory;
const posts = props.data.allStrapiPost.nodes;
return (
<Layout>
<Helmet>
<title>{categories.name}</title>
<meta name="description" content={categories.name} />
</Helmet>
<p className={styles.categoryName}> {categories.name}</p>
<PostList posts={posts} />
</Layout>
);
};
export const query = graphql`
query ($slug: String!){
strapiCategory (slug: { eq: $slug }){
name
slug
}
allStrapiPost(filter:{categories:{slug:{ eq: $slug }}}){
nodes {
slug
title
content
thumbnail
published_at(formatString: "YYYY.MM.DD hh:mm")
categories {
slug
name
}
}
}
}
`;
export default CategoryPage;
错误代码
错误 #98123 网页包
生成开发 JavaScript 包失败
/Users/t/WebDevelopment/xxxxxx/src/pages/categories/{xxxx.slug}.js 29:39 错误字段“slug”未按类型定义 “StrapiPostCategoriesFilterListInput”graphql/模板字符串
✖ 1 个问题(1 个错误,0 个警告)
重新构建开发包失败 - 0.177s 错误 /Users/t/WebDevelopment/xxxx/src/pages/categories/{xxxxxx.slug}.js 29:39 错误字段“slug”未按类型定义 "StrapiPostCategoriesFilterListInput"
链接正常。
它会显示出来。
const categories = props.data.strapiCategory;
<title>{categories.name}</title>.
这不会显示。
const posts = props.data.allStrapiPost.nodes;
<PostList posts={posts} />
【问题讨论】: