MDX и React-компоненты
Rspress поддерживает MDX, формат создания контента, который бесшовно объединяет Markdown с JSX. MDX позволяет использовать компоненты React напрямую в вашей документации, сочетая лаконичный синтаксис Markdown с экосистемой React. Он идеально подходит для создания интерактивной, компонентно-ориентированной технической документации.
Что такое MDX
MDX объединяет синтаксис Markdown и JSX, поэтому вы можете писать контент Markdown и использовать компоненты React в одном файле.
Мы рекомендуем использовать .mdx для всех файлов документации. Это позволяет использовать в качестве контента обычный Markdown, но при этом импортировать и использовать встроенные компоненты, предоставляемые Rspress.
Фрагменты MDX
Каждый файл .mdx компилируется в React-компонент, что означает, что его можно импортировать как обычный компонент и свободно рендерить внутри него React-компоненты. Например:
Это отображается как:
Тестирование использования MDX-фрагментов и React-компонентов.
Это фрагмент mdx.
Это компонент из tsx
В файлах .mdx вы можете использовать встроенные компоненты, предоставляемые Rspress, или устанавливать библиотеки компонентов React, чтобы обогатить вашу документацию.
Соглашение о маршрутах
В директории документации MDX-фрагменты или React-компоненты должны быть исключены из маршрутизации с помощью route.exclude. Для удобства файлы, начинающиеся с _, исключаются по умолчанию через route.excludeConvention.
Также вы можете размещать компоненты в соседних директориях вне директории docs. Например:
Это отображается так:
кнопка
Текст из MDX
Альтернативный способ: написание страниц на TSX
Это отображается как:
Это содержимое в tsx, но стили такие же, как в документации, например,@rspress/core. Однако этот текст с className="rp-not-doc"@rspress/core не будет стилизоваться
Синтаксис TSX и HTML затрудняет извлечение статической информации, например, индексов для локального поиска.
Мы рекомендуем использовать файлы .mdx для содержимого документов и файлы .tsx для интерактивного динамического контента.
Требования к версиям React
Если react, react-dom или react-router-dom уже установлены в вашем проекте, Rspress будет в первую очередь использовать версию, установленную в вашем проекте, а не встроенную версию по умолчанию.

