AWSCLOUD/components/PageLayout.tsx

43 lines
1014 B
TypeScript
Raw Normal View History

2025-09-16 15:24:39 +08:00
'use client';
import { useEffect } from 'react';
import Navbar from './Navbar';
import Footer from './Footer';
import TDK from './TDK';
interface PageLayoutProps {
title: string;
description: string;
keywords: string;
currentLang: string;
currentContent: any;
handleLanguageChange: (lang: string) => void;
children: React.ReactNode;
}
export default function PageLayout({
title,
description,
keywords,
currentLang,
currentContent,
handleLanguageChange,
children,
}: PageLayoutProps) {
return (
<div className="min-h-screen bg-gray-50 text-gray-900">
<TDK title={title} description={description} keywords={keywords} lang={currentLang} />
<Navbar
currentLang={currentLang}
currentContent={currentContent}
handleLanguageChange={handleLanguageChange}
/>
<main className="pt-8 pb-16">{children}</main>
<Footer />
</div>
);
}