使用 Next.js如何在 SSR 期间将类添加到 body 或 _next div?



我有一个用例,在 SSR 期间,我必须向根元素添加一个类,可以是正文还是_next。该类需要根据getInitialProps响应有条件/动态地添加。 我想知道在Next.js的当前状态下这是否可能。

import React from "react";
import NextDocument, { Html, Head, Main, NextScript } from "next/document";
class Document extends NextDocument {
static async getInitialProps(ctx) {
const initialProps = await NextDocument.getInitialProps(ctx);
// Determine if class name should be added
return {
...initialProps,
shouldShow: true,
};
}
render() {
return (
<Html>
<Head>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<style>
{`#__next {
height: ${this.props.shouldShow ? "100%" : "0"}
}`}
</style>
</Head>
<body>
<Main />
<NextScript />
</body>
</Html>
);
}
}
export default Document;

最新更新