ДокументацияПонять модель
Просмотры
Прежде чем выбирать формат файла, важно различать, как Nexy обрабатывает ресурсы и как они их отображают.
| Срок | Определение |
|---|---|
| Страница | Ресурс приложения с URL-адресом. Он определяется файлом в папке src/routes/. |
| Посмотреть | Процесс создания тела ответа для страницы. Представление преобразует логику и данные в HTML или JSON. |
| Компонент | Многоразовый строительный блок пользовательского интерфейса, используемый для составления представления. Компоненты могут быть собственными помощниками Nexy или зависеть от платформы (React, Vue] и т. д.). |
| Обработчик маршрута | Функция Python, которая обрабатывает HTTP-запрос для определенного метода (например, GET, POST). |
| Конечная точка | Уникальная комбинация URL-адреса и метода HTTP, на который отвечает обработчик маршрута. |
Не уверен? Напишите файл .nexy. Для него не требуется клиентская платформа, и вы можете добавить в него компонент React, Vue, Svelte, Solid или Preact позже, как остров.
.nexy(Python frontmatter + Jinja2).md(GitHub-flavoured Markdown).mdx(React or Preact).tsx .vue .svelte(framework files).py(GET, POST, …)Форматы
| Формат | Файл | Серверный рендер | Клиентская платформа | Примечания |
|---|---|---|---|---|
.nexy |
файлы .nexy | Логика Jinja2 + Python, потоковая передача | необязательно | Родной формат страницы Nexy |
.md |
Markdown и MDX | Markdown во время запроса | опционально через макет | Чистый Markdown, GFM, с переносом макета |
.mdx |
Markdown и MDX | рамки реформы безопасности | React или Preact | Markdown с компонентами |
.tsx |
React, Solid или Preact | клиентский режим: фреймворк, визуализируемый в Node | React, Solid или Preact | Компонентные маршруты |
.vue |
Vue | клиентский режим: фреймворк, визуализируемый в Node | Vue | Маршруты SFC |
.svelte |
Svelte | клиентский режим: фреймворк, визуализируемый в Node | Svelte | Маршруты SFC |
Встроенные помощники Image, Link, Audio, Video и Import: Компоненты.
Смешение форматов
В рамках одного проекта можно сочетать разные технологии:
- Острова: вы можете импортировать компонент React или Vue внутри страницы
.nexy. Сервер визуализирует оболочку, а платформа гидратирует компонент на клиенте. - Общая логика: обработчики маршрутов в файлах
.pyмогут предоставлять данные страницам в любом формате через общее состояние приложения или вызовы API.
Включить фреймворк
Установите useFF в nexyconfig.py и запустите nexy new для добавления зависимостей:
from nexy.core.models import NexyConfigModelfrom nexy.frontend import react class NexyConfig(NexyConfigModel): useFF = react()При включенной платформе Vite обрабатывает свои клиентские пакеты. В клиентском режиме его расширения становятся маршрутами; в режиме сервера одни и те же файлы являются компонентами, которые вы импортируете как острова - файл фреймворка под src/routes/ там отклоняется. См. режим сервера и режим клиента.
Макеты
layout.* в каталоге переносит страницы, находящиеся под ним. См. макеты.
Следующие шаги
- Файлы .nexy: Python + Jinja2 + реквизит
- Markdown и MDX: страницы с контентом
- Компоненты: встроенные помощники HTML.