由于您使用的是pages
文件夹,因此可以使用Next.js所说的Per-Page Layouts.由于大多数页面将使用全局Layout
,因此您可以为您的管理员执行以下操作:
// pages/admin/index.js
import AdminLayout from "./_layout";
export default function Page() {
return <></>;
}
Page.getLayout = function getLayout(page) {
return <AdminLayout>{page}</AdminLayout>;
};
// pages/_app.js
import Layout from "./_layout";
export default function MyApp({ Component, pageProps }) {
// Use the layout defined at the page level, if available
const getLayout = Component.getLayout;
if (getLayout) {
return getLayout(<Component {...pageProps} />);
}
// Otherwise use the global Layout
return (
<Layout>
<Component {...pageProps} />
</Layout>
);
}
而对于future 使用app
目录的人来说,这thread将会有所帮助.