ДокументацияИнструменты и помощь

Устранение неполадок

Проблемы, с которыми люди сталкиваются в первую очередь, с тем, что вы видите и что делать. Каждый из них - результат настоящего пробега.

Страница отвечает на ошибку 404, но ее файл существует.

Посмотрите на терминал, на котором выполняется nx dev или nx start. Когда страницу невозможно импортировать, Nexy сообщает об ошибке с ее файлом и строкой, а маршрут не прописывается:

nexy » error __nexy__/src/routes/index.py:18  ImportError: cannot import name 'FrameworkLogo' ...

Исправьте импорт, указанный там. Обычными причинами являются компонент, имя функции которого не соответствует тому, что вы импортируете (см. следующий пункт), и опечатка в пути.

Страница .nexy не компилируется: «Ошибка логического анализа»

src/components/live-panel.nexy - Logic Parse Error: invalid syntax

Компонент .nexy импортируется как модуль Python, поэтому имя его файла должно быть допустимым. Дефис - нет. Назовите его в PascalCase, LivePanel.nexy и импортируйте с тем же именем:

from "@/components/LivePanel.nexy" import LivePanel

Компонент отображает своих дочерних элементов как текст <slot />

Компонент .nexy размещает свои дочерние элементы с <Slot /> с заглавной буквой S. Строчная буква <slot /> остается на странице как есть. Vue, у которого есть собственный <slot />, не затрагивается.

Проп показывает имя переменной

<Icon path=icon />          renders: icon<Icon path="{{ icon }}" />  renders: the value of icon

Атрибут без фигурных скобок - это текст. Поместите выражение Jinja в атрибут, чтобы передать вычисленное значение.

Значение в {{ ... }} отображается пустым.

Jinja2 скрывает неопределенную переменную. Объявите каждое свойство, которое вы используете, во вступительной части (title: prop[str] = "") и проверьте правильность написания.

Классы утилит не действуют на странице .nexy (UnoCSS)

UnoCSS читает файл только тогда, когда его расширение находится в его конвейере содержимого. Серверный проект, созданный nx new с UnoCSS уже содержит .nexy; более старому это нужно в uno.config.ts:

content: {  filesystem: ['src/**/*.nexy'],  pipeline: { include: [/\.(vue|svelte|[jt]sx|mdx?|astro|html|nexy)($|\?)/] },},

Tailwind находит файлы .nexy самостоятельно.

Страница .mdx запрашивает пакеты.

[nexy] MDX support requires optional packages that are not installed.

Установите их в проект: @mdx-js/rollup, remark-gfm и @mdx-js/react (плюс @mdx-js/esbuild вместо nx build). MDX требуется React или Preact в useFF. Без клиентской платформы запишите страницу как .md. См. Markdown и MDX.

No module named 'sqlmodel' (или любой пакет) при запуске команды

nexy » nexyconfig.py cannot be loaded: No module named 'sqlmodel'. If it is a package, install itin this Python (...) or activate the project's virtual environment.

Команда выполнена неправильно Python. Пакеты вашего проекта (ваш ORM, ваши библиотеки) находятся в его .venv и uvx nexy или глобальном nexy запущенном в собственной среде, в которой нет ни одного из них.

Активируйте виртуальную среду проекта из папки проекта, затем снова запустите команду:

.venv\Scripts\activate    # Windows; on macOS and Linux: source .venv/bin/activatenexy dev

Приглашение начинается с (.venv), когда оно активно. Или пропустите активацию с помощью uv run nexy dev. Если пакет действительно отсутствует в проекте, добавьте его с помощью uv add sqlmodel.

nx dev показывает ошибку и ждет

Если ваше приложение не может запуститься, nx dev сообщает, почему, и ждет следующего изменения файла; оно не выходит. Исправьте файл и сохраните. Только Ctrl+C останавливает это.

Порт занят

nx dev берет следующий свободный порт и печатает его. Чтобы выбрать один, используйте --port или установите usePort в nexyconfig.py.

Тема мигает белым на темной странице.

Сохраненную тему необходимо применить перед первой покраской. Сохраните небольшой скрипт стартера в <head> корневого макета и поместите suppressHydrationWarning на <html> в React.

Все еще застрял

Изменить на GitHub

Enter открывает результат, Esc закрывает.