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и т.д.) и соответствует данным поля.