Next.js 的 NextScript 组件用于在 HTML 中呈现基本的 Next.js JavaScript 编译资源。使用该组件很简单,只需将其包含在 your document.tsx 或 your document.jsx 中的 body 标签中即可。
例如,在你的文档中添加 NextScript 组件如下所示:
import Document, { Html, Head, Main, NextScript } from 'next/document';
class MyDocument extends Document {
render() {
return (
<Html>
<Head />
<body>
<Main />
<NextScript />
</body>
</Html>
);
}
}
export default MyDocument;
注意,NextScript 必须作为 Main 组件的后置元素。这是因为它将 Next.js 的此页资源包含在 HTML 中,以便资源可以在页面呈现中使用。您还可以使用其 props 实现更多功能,例如 async 和 defer 。
例如:
import Document, { Html, Head, Main, NextScript } from 'next/document';
class MyDocument extends Document {
render() {
return (
<Html>
<Head />
<body>
<Main />
<NextScript async={true} defer={true} />
</body>
</Html>
);
}
}
export default MyDocument;
在上面的示例中,async 和 defer 属性将 Next.js 此页的资源异步载入和推迟载入,以优化页面的性能。