import type { Metadata } from 'next'; import { publicApi } from '@/lib/services'; import { NewsCard } from '@/components/front/NewsCard'; import type { NewsCategory } from '@/lib/types'; export const metadata: Metadata = { title: '新闻资讯', description: '公司动态与行业新闻。', }; export const revalidate = 60; interface PageProps { searchParams: { categoryId?: string; keyword?: string; page?: string }; } export default async function NewsPage({ searchParams }: PageProps) { const page = Number(searchParams.page ?? 1); const categoryId = searchParams.categoryId ? Number(searchParams.categoryId) : undefined; const [categories, newsRes] = await Promise.all([ publicApi.getNewsCategories().catch(() => [] as NewsCategory[]), publicApi .getNews({ page, pageSize: 10, categoryId, keyword: searchParams.keyword }) .catch(() => ({ list: [], total: 0, page, pageSize: 10 })), ]); return (
共 {newsRes.total} 条