← Назад

tgx:dom-fields#

Карта полей, редактируемых в DOM-модалке.

Синтаксис#

<a tgx:dom-fields="text,@href:url,@target:select" href="/" target="_self">Ссылка</a>

Пример 1: минимум (копипаст для старта)#

<a tgx:dom-fields="text,@href:url,@target:select" href="/" target="_self">Ссылка</a>

Пример 2: реальный сценарий#

<a tgx:dom-fields="text,@href:url,@target:select" href="/" target="_self">Ссылка</a>

Разбор#

Ограничивает набор доступных атрибутов/полей для правки и позволяет указать тип редактора через :type.

Когда использовать#

  • Когда нужно ограничить, какие элементы и какие поля можно править через визуальный DOM-редактор.
  • Когда важно явно зафиксировать безопасный список редактируемых атрибутов вместо режима "можно всё".

Поведение в runtime#

  • Тип: служебный атрибут.
  • В sandbox директива tgx:dom-fields: запрещена.

Параметры#

Обязательные#

  • tgx:dom-fields — карта editable-полей (text,@attr:type,...).

Необязательные#

  • :type у каждого токена (text, url, select, number, ...).

По умолчанию#

  • Без :type поле обрабатывается как строка.

Типы#

  • Формат токенов: text[:type], html[:type], @attr[:type].

Типы данных и приведение#

  • Список полей задается через CSV: text, html, @attribute (например @href, @src, @alt).
  • Можно указать тип редактора суффиксом :type: @href:url, @price:number, @published:boolean.
  • Тип влияет на вид поля в модалке редактирования (через tgx:input), а не на сам HTML-атрибут узла.
  • Пустой tgx:dom-fields (без значения) означает: в модалке будут доступны все текущие атрибуты узла как @....
  • Невалидные токены и неизвестные типы silently пропускаются, поэтому опечатки нужно проверять вручную.

Частые ошибки#

  • Не открывайте права delete или @href для неадминских ролей без отдельной проверки.
  • Держите карту полей минимальной, чтобы не расширять поверхность изменений в DOM-редакторе.
  • Проверяйте суффикс :type: неверный тип не применится и редактор покажет обычное текстовое поле.

Проверка перед публикацией#

  • Пример корректно отрабатывает в рабочем шаблоне/тестовой странице проекта.
  • Значения по умолчанию обработаны (|fallback) там, где данные могут отсутствовать.
  • Список токенов ограничен допустимыми значениями: text, html, @attribute и опциональным :type.
  • Проверено, что :type выбран осознанно (url, number, boolean, date и т.д.) и соответствует данным поля.

См. также#