nextjs/no-head-import-in-document 正しさ
何をするのか
pages/_document.js 内部での next/head の使用を禁止します。
なぜこれは悪いのか
pages/_document.js 内で next/head をインポートすると、Next.js アプリケーションで予期しない問題が発生する可能性があります。
例
このルールに対する誤りの例:
jsx
import Document, { Html, Main, NextScript } from "next/document";
import Head from "next/head";
class MyDocument extends Document {
static async getInitialProps(ctx) {
//...
}
render() {
return (
<Html>
<Head></Head>
</Html>
);
}
}
export default MyDocument;このルールに対する正しい例:
jsx
import Document, { Html, Head, Main, NextScript } from "next/document";
class MyDocument extends Document {
static async getInitialProps(ctx) {
//...
}
render() {
return (
<Html>
<Head></Head>
</Html>
);
}
}
export default MyDocument;使い方
このルールを有効化するには、設定ファイルまたは CLI を使用して次のように指定できます:
json
{
"plugins": ["nextjs"],
"rules": {
"nextjs/no-head-import-in-document": "error"
}
}bash
oxlint --deny nextjs/no-head-import-in-document --nextjs-plugin