3

我正在使用 NextJS 和 Styled Components。阅读下面的文档,我在 NextJS 中添加了一个自定义 _document.js 以使 Styled Components 工作。

样式化组件文档

示例代码是用 React 类编写的,有没有办法将其转换为函数?

4

2 回答 2

4

从Next 11.1.1开始这是可能的,这要归功于#28515,但该功能目前似乎没有记录。
请参见下面的示例:

import { Html, Head, Main, NextScript } from 'next/document'

const Document = () => (
  <Html>
    <Head/>
    <body>
      <Main />
      <NextScript />
    </body>
  </Html>
)

export default Document
于 2021-10-06T11:36:02.003 回答
1

答案是没有好的方法可以做到这一点,我想你可以以某种方式覆盖它,但是 Next.js 在其自定义运行时中使用 _document 和 _app 并且覆盖它不是一个好主意。

_document 的目的:

自定义文档通常用于扩充应用程序的 <html> 和 <body> 标签。

另外,请注意,在 _document 中使用任何逻辑(除了 getInitialProps 之外)都是不可取的:https ://nextjs.org/docs/advanced-features/custom-document#caveats

于 2021-02-18T11:54:02.773 回答