tgx:ajax-download — Маппинг в `data-hx-download` для download-ответов
tgx:ajax-download#
Маппинг в data-hx-download для download-ответов.
Синтаксис#
<div tgx:ajax-download="true"></div>
Пример 1: минимум (копипаст для старта)#
<div tgx:ajax-download="true"></div>
Пример 2: реальный сценарий#
<button tgx:ajax-post="/api/v1/site/export" tgx:ajax-download="true">Скачать snapshot</button>
Разбор#
Frontend runtime вhtmx:beforeSwap переводит ответ в сценарий скачивания файла.
Когда использовать#
- Когда нужно обновлять часть страницы без полной перезагрузки (формы, фильтры, списки, таблицы).
- Когда нужно контролировать UX запроса: куда вставить ответ, по какому событию отправить и как обработать подтверждение.
Поведение в runtime#
- Тип: пользовательская директива.
- В sandbox директива
tgx:ajax-download: запрещена. - Это HTMX-мост: runtime маппит
tgx:в соответствующиеdata-hx-атрибуты.
Частые ошибки#
- Ожидать download при обычном JSON-ответе endpoint
- Не проверять, что endpoint реально возвращает файл
Проверка перед публикацией#
- У endpoint корректные заголовки для скачивания
- Для HTMX-запроса включен
tgx:ajax-download="true"