2023-07-05 15:11:16 +02:00
|
|
|
---
|
|
|
|
title: No Page Custom Font
|
|
|
|
---
|
2021-05-10 21:08:14 +02:00
|
|
|
|
2022-06-14 04:17:42 +02:00
|
|
|
> Prevent page-only custom fonts.
|
|
|
|
|
2023-07-05 15:11:16 +02:00
|
|
|
## Why This Error Occurred
|
2021-05-10 21:08:14 +02:00
|
|
|
|
2021-11-26 14:27:13 +01:00
|
|
|
- The custom font you're adding was added to a page - this only adds the font to the specific page and not the entire application.
|
2022-06-14 04:17:42 +02:00
|
|
|
- The custom font you're adding was added to a separate component within `pages/_document.js` - this disables automatic font optimization.
|
2021-05-10 21:08:14 +02:00
|
|
|
|
2023-07-05 15:11:16 +02:00
|
|
|
## Possible Ways to Fix It
|
2021-05-10 21:08:14 +02:00
|
|
|
|
2021-05-11 13:05:03 +02:00
|
|
|
Create the file `./pages/_document.js` and add the font to a custom Document:
|
2021-05-10 21:08:14 +02:00
|
|
|
|
2023-07-05 15:11:16 +02:00
|
|
|
```jsx filename="pages/_document.js"
|
2021-05-10 21:08:14 +02:00
|
|
|
import Document, { Html, Head, Main, NextScript } from 'next/document'
|
|
|
|
|
|
|
|
class MyDocument extends Document {
|
|
|
|
render() {
|
|
|
|
return (
|
|
|
|
<Html>
|
|
|
|
<Head>
|
|
|
|
<link
|
|
|
|
href="https://fonts.googleapis.com/css2?family=Inter&display=optional"
|
|
|
|
rel="stylesheet"
|
|
|
|
/>
|
|
|
|
</Head>
|
|
|
|
<body>
|
|
|
|
<Main />
|
|
|
|
<NextScript />
|
|
|
|
</body>
|
|
|
|
</Html>
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export default MyDocument
|
|
|
|
```
|
|
|
|
|
2021-11-26 14:27:13 +01:00
|
|
|
Or as a function component:
|
|
|
|
|
2023-07-05 15:11:16 +02:00
|
|
|
```jsx filename="pages/_document.js"
|
2021-11-26 14:27:13 +01:00
|
|
|
import { Html, Head, Main, NextScript } from 'next/document'
|
|
|
|
|
|
|
|
export default function Document() {
|
|
|
|
return (
|
|
|
|
<Html>
|
|
|
|
<Head>
|
|
|
|
<link
|
|
|
|
href="https://fonts.googleapis.com/css2?family=Inter&display=optional"
|
|
|
|
rel="stylesheet"
|
|
|
|
/>
|
|
|
|
</Head>
|
|
|
|
<body>
|
|
|
|
<Main />
|
|
|
|
<NextScript />
|
|
|
|
</body>
|
|
|
|
</Html>
|
|
|
|
)
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
2021-05-10 21:08:14 +02:00
|
|
|
### When Not To Use It
|
|
|
|
|
2021-11-26 14:27:13 +01:00
|
|
|
If you have a reason to only load a font for a particular page or don't care about font optimization, then you can disable this rule.
|
2021-05-10 21:08:14 +02:00
|
|
|
|
2023-07-05 15:11:16 +02:00
|
|
|
## Useful Links
|
2021-05-10 21:08:14 +02:00
|
|
|
|
2023-07-05 15:11:16 +02:00
|
|
|
- [Custom Document](/docs/pages/building-your-application/routing/custom-document)
|
|
|
|
- [Font Optimization](/docs/pages/building-your-application/optimizing/fonts)
|