#javascript #next.js
Вопрос:
У меня ошибка с веб-пакетами и nextjs.
import NextDocument, { Html, Head, Main, NextScript } from 'next/document' import theme from '../libs/theme.js' export default class Document extends NextDocument { render() { return ( lt;Html lang="en"gt; lt;Head /gt; lt;ColorModeScript initialColorMode={ theme.config.initialColorMode } /gt; lt;bodygt; lt;Main /gt; lt;NextScript /gt; lt;/bodygt; lt;/Htmlgt; ) } }
Ошибка: Ошибка ссылки: Не удается получить доступ к «WEBPACK_DEFAULT_EXPORT» до инициализации.
9 | lt;Head /gt; gt; 10 | lt;ColorModeScript initialColorMode={ theme.config.initialColorMode } /gt; | ^ 11 | lt;bodygt; 12 | lt;Main /gt; 13 | lt;NextScript /gt;
Кто-нибудь знает, как это исправить? Заранее спасибо!
Комментарии:
1. Единственными дочерними элементами
html
могут бытьhead
иbody
. У вас не может быть других детей; вы должны вложить все остальное в любого из этих двоих.2. Но я следую учебнику, и на его сайте он работает просто отлично..
3. Может быть, вам следует импортировать компонент ColorModeScript откуда-нибудь
4. Он импортирован, я вижу, что не вставил его выше..
5. @Meijerrr Показать структуру файла и компонент ColorModeScript
Ответ №1:
Как упоминалось в комментариях выше, попробуйте переместить свой скрипт в lt;bodygt;
(или в lt;Head/gt;
)
lt;Head /gt; lt;bodygt; lt;ColorModeScript initialColorMode={ theme.config.initialColorMode } /gt; lt;/bodygt;
Комментарии:
1. Все равно не работает..