ДокументацияПонять модель

Просмотры

Прежде чем выбирать формат файла, важно различать, как Nexy обрабатывает ресурсы и как они их отображают.

Срок Определение
Страница Ресурс приложения с URL-адресом. Он определяется файлом в папке src/routes/.
Посмотреть Процесс создания тела ответа для страницы. Представление преобразует логику и данные в HTML или JSON.
Компонент Многоразовый строительный блок пользовательского интерфейса, используемый для составления представления. Компоненты могут быть собственными помощниками Nexy или зависеть от платформы (React, Vue] и т. д.).
Обработчик маршрута Функция Python, которая обрабатывает HTTP-запрос для определенного метода (например, GET, POST).
Конечная точка Уникальная комбинация URL-адреса и метода HTTP, на который отвечает обработчик маршрута.

Не уверен? Напишите файл .nexy. Для него не требуется клиентская платформа, и вы можете добавить в него компонент React, Vue, Svelte, Solid или Preact позже, как остров.

Какой файл для какой страницы
server logic + HTML.nexy(Python frontmatter + Jinja2)
prose that changes rarely.md(GitHub-flavoured Markdown)
prose + components.mdx(React or Preact)
app-like page, client router.tsx .vue .svelte(framework files)
API handler.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 для добавления зависимостей:

nexyconfig.py
from nexy.core.models import NexyConfigModelfrom nexy.frontend import react  class NexyConfig(NexyConfigModel):    useFF = react()

При включенной платформе Vite обрабатывает свои клиентские пакеты. В клиентском режиме его расширения становятся маршрутами; в режиме сервера одни и те же файлы являются компонентами, которые вы импортируете как острова - файл фреймворка под src/routes/ там отклоняется. См. режим сервера и режим клиента.

Макеты

layout.* в каталоге переносит страницы, находящиеся под ним. См. макеты.

Следующие шаги

Изменить на GitHub

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