import { notFound } from "next/navigation"; import type { Metadata } from "next"; import { getSolutionBySlug } from "@/services/solution.service"; import { getPreviewOrFallback } from "@/services/preview.service"; import { BlockRenderer } from "@/blocks/BlockRenderer"; import type { SolutionPageDetail } from "@/types/wagtail"; interface SolutionDetailPageProps { params: Promise<{ slug: string }>; } export async function generateMetadata({ params, }: SolutionDetailPageProps): Promise { const { slug } = await params; const solution = await getSolutionBySlug(slug).catch(() => null); return { title: solution?.title ?? "解决方案未找到" }; } export default async function SolutionDetailPage({ params, }: SolutionDetailPageProps) { const { slug } = await params; const solution = await getPreviewOrFallback( "solutions.solutionpage", "body,industry,summary", () => getSolutionBySlug(slug).catch(() => null), ); if (!solution) { notFound(); } return (

{solution.title}

{solution.industry && (

{solution.industry}

)}
); }