Files
novalon-website/src/app/(marketing)/services/[id]/page.tsx
T
张翔 9451814ca4 feat: 添加面包屑导航组件并优化页面布局
refactor: 重构页面结构和导航逻辑

fix: 修复移动端菜单导航和滚动行为

perf: 优化图片加载性能和资源请求

test: 添加端到端测试和性能测试用例

docs: 更新.gitignore文件

chore: 更新依赖和配置

style: 优化代码格式和类型安全

ci: 调整Playwright测试超时时间

build: 更新Next.js配置和构建选项
2026-02-28 09:09:04 +08:00

38 lines
962 B
TypeScript

import { Metadata } from 'next';
import { notFound } from 'next/navigation';
import { SERVICES } from '@/lib/constants';
import { ServiceDetailClient } from './client';
export async function generateStaticParams() {
return SERVICES.map((service) => ({
id: service.id,
}));
}
export async function generateMetadata({ params }: { params: Promise<{ id: string }> }): Promise<Metadata> {
const { id } = await params;
const service = SERVICES.find((s) => s.id === id);
if (!service) {
return {
title: '服务未找到',
};
}
return {
title: `${service.title} - 睿新致远`,
description: service.description,
};
}
export default async function ServiceDetailPage({ params }: { params: Promise<{ id: string }> }) {
const { id } = await params;
const service = SERVICES.find((s) => s.id === id);
if (!service) {
notFound();
}
return <ServiceDetailClient service={JSON.parse(JSON.stringify(service))} />;
}