--- import PageLayout from "../../layouts/PageLayout.astro"; // @ts-ignore import Media from "../../components/posts/Media"; import { POST_TYPES } from "../../scripts/consts"; import { graphQuery } from "../../scripts/requests"; import { DocumentRenderer } from "@keystone-6/document-renderer"; export const prerender = false; const { slug } = Astro.params; const { post } = ( await graphQuery( `query Query($where: PostWhereUniqueInput!) { post(where: $where) { slug type title description assets { caption url type } cover { image { url } } content { document } categories { slug name } tags { slug name } createdAt } }`, { where: { slug }, } ) ).data; --- { post.cover && ( ) } {post.title} {post.description ?? "No description"} { post.assets?.length > 0 && ( ) } 作者 {post.author?.name ?? "佚名"} 类型 {POST_TYPES[post.type as unknown as string]} 分类 { post.categories?.map((category: any) => ( {category.name} )) } 标签 { post.tags?.map((tag: any) => ( {tag.name} )) } 发布于 {new Date(post.createdAt).toLocaleString()}
{post.description ?? "No description"}