Виджеты
Тип метаданных
widget
Библиотека компонентов
http://n2oapp.net/framework/config/schema/widget-5.0
Базовые свойства
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
id | Строка | Идентификатор виджета внутри страницы | Генерируется по индексу wgt[idx] |
ref-id | Ссылка | Ссылка на родительский файл виджета | |
src | Строка | React комп онент виджета | Для каждого виджета своя реализация по умолчанию. Для <widget> атрибут обязательный. |
class | CSS класс | Класс компонента виджета | |
style | CSS свойство | Стиль компонента виджета | |
datasource | Ссылка на источник данных | Идентификатор источника данных для виджета | |
fetch-on-init | true false | Получение данных при инициализации | |
fetch-on-visibility | true false | Получение данных при появлении по условию видимости | |
visible | true false | Видимость виджета | |
auto-focus | true false | Автоматическая установка фокуса на виджете | false |
Настройки
# Автоматическая установка фокуса на виджете
n2o.api.widget.auto_focus=false
Простые виджеты
<calendar>
Виджет Календарь.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию | Обязательность |
---|---|---|---|---|
height | Строка | Высота календаря. Доступные единицы измерения: px , em , rem . При указании числа оно будет приведено к px | ||
default-date | Строка | Стартовая дата календаря (по умолчанию текущая) | ||
default-view | day week workWeek month agenda | Вид отображения календаря по умолчанию | month | |
views | Строка | Список используемых видов отображения в календаре (через запятую) | ! | |
min-time | Строка | Минимальное отображаемое время | ||
max-time | Строка | Максимальное отображаемое время | ||
mark-days-off | true false | Подсветка выходных дней | true | |
selectable | true false | Включает возможность добавлять события в календарь | true | |
step | Число | Шаг при создании события (в минутах) | 30 | |
timeslot-count | Число | Количество слотов на раздел | 2 | |
title-field-id | Строка | Поле выборки, отвечающее за заголовок события | ! | |
tooltip-field-id | Строка | Поле выборки, отвечающее за данные тултипа события | ! | |
start-field-id | Строка | Поле выборки, отвечающее за дату начала события | ! | |
end-field-id | Строка | Поле выборки, отвечающее за дату завершения события | ! | |
cell-color-field-id | Строка | Поле выборки, отвечающее за цвет ячейки события | ! | |
disabled-field-id | Строка | Поле выборки, отвечающее за блокирование события для выбора | ! |
Настройки
#Количество событий в календаре (число)
n2o.api.widget.calendar.size=50
#Вид календаря по умолчанию
n2o.api.widget.calendar.view=month
#Подсветка выходных дней
n2o.api.widget.calendar.mark_days_off=true
#Включает возможность добавлять события в календарь
n2o.api.widget.calendar.selectable=true
#Шаг при создании события в минутах
n2o.api.widget.calendar.step=30
#Количество слотов на раздел
n2o.api.widget.calendar.time_slot_count=2
Тело
<resources> - Ресурсы календаря
<action-on-select-slot> - Действие на добавление события в календаре html
<action-on-select-event> - Действие на клик по событию
<formats> - Форматы дат и времени
<dependencies> - Зависимости виджета
<datasource> - Встроенный источник данных
<toolbar> - Меню управляющих кнопок виджета
<actions> - Встроенные действия
Пример
<calendar
height="500px" default-view="month" views="month,day,agenda"
min-time="08:00:00" max-time="20:00:00"
title-field-id = "title" tooltip-field-id = "tooltip"
start-field-id = "start" end-field-id = "end" cell-color-field-id = "color"
disabled-field-id = "disabled">
<resources>...</resources>
<action-on-select-slot>...</action-on-select-slot>
<action-on-select-event>...</action-on-select-event>
<formats>...</formats>
</calendar>
<resources>
Ресурсы календаря.
Ресурсы используются для возможности разбиения календаря
на определенные сущности (бронирование переговорных комнат и т.д.).
Артибуты
Наименование | Тип | Описание |
---|---|---|
value-field-id | Строка | Поле выборки, отвечающее за маппинг ресурсов |
Тело
<resource> - Ресурс календаря
Пример
<resources value-field-id="resourceId">
...
</resources>
<resource>
Ресурс календаря.
Атрибуты
Наименование | Тип | Описание | Обязательность |
---|---|---|---|
id | Строка | Идентификатор ресурса | ! |
title | Строка | Имя ресурса | ! |
Пример
<resource id="1" title="Meeting room"/>
<action-on-select-slot>
Действие на добавление события в календаре.
Тело
Ссылка на Обработчик действия
<action-on-select-event>
Действие на клик по событию.
Тело
Ссылка на Обработчик действия
<formats>
Форматы дат и времени.
Тело
<format> - Формат дат и времени
<format>
Формат даты и времени.
Атрибуты
Наименование | Тип | Описание | Обязательность |
---|---|---|---|
id | dateFormat dayFormat weekdayFormat timeGutterFormat monthHeaderFormat dayRangeHeaderFormat dayHeaderFormat agendaHeaderFormat selectRangeFormat agendaDateFormat agendaTimeFormat agendaTimeRangeFormat eventTimeRangeFormat eventTimeRangeStartFormat eventTimeRangeEndFormat | Тип формата. Список всех возможных форматов | ! |
value | Строка | Значение формата | ! |
Пример
<format id="dayFormat" value="dd"/>
<chart>
Виджет График.
Атрибуты
Наименование | Тип | Описание |
---|---|---|
width | Строка | Ширина графика. Доступные единицы измерения: px . При указании числа оно будет приведено к px |
height | Строка | Высота графика. Доступные единицы измерения: px . При указании числа оно будет приведено к px |
Тело
<areas> - Диаграмма-область
<bars> - Гистограмма
<lines> - Линейный график
<pie> - Круговая диаграмма
<dependencies> - Зависимости виджета
<datasource> - Встроенный источник данных
<toolbar> - Меню управляющих кнопок виджета
<actions> - Встроенные действия
Пример
<chart width="600px" height="400px" datasource="ds1">
<areas>
<area>...</area>
</areas>
</chart>
<form>
Виджет Форма.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
mode | one-model two-models | Режим работы формы. Возможные значения: one-model - одна модель редактируется и отправляется. two-models - 2х модельный режим (при первой загрузке данные копируются в модель resolve и edit. При редактировании формы меняется модель edit.) | one-model |
unsaved-data-prompt | true false | Показать предупреждение о наличии несохраненных данных. | false |
Настройки
#Показать предупреждение о наличии несохраненных данных в форме
n2o.api.widget.form.unsaved_data_prompt=false
#Количество записей в форме (число)
n2o.api.widget.form.size=1
Тело
<fields> - Поля формы
<dependencies> - Зависимости виджета
<datasource> - Встроенный источник данных
<toolbar> - Меню управляющих кнопок виджета
<actions> - Встроенные действия
Пример
<?xml version='1.0' encoding='UTF-8'?>
<form xmlns="http://n2oapp.net/framework/config/schema/widget-5.0"
name="Моя форма"
object-id="myObject">
<fields>...</fields>
<toolbar>...</toolbar>
</form>
<html>
HTML виджет. Виджет, отображающий HTML содержимое.
Тело
<content> - Контент для отображения html
<content>
Контент для отображения html.
Атрибуты
Наименование | Тип | Описание |
---|---|---|
url | Строка | URL адрес HTML страницы. Если не задан, необходимо задать содержимое в теле. |
Пример
<html>
<content url="index.html"/>
</html>
Пример
<html>
<content>
<![CDATA[
<div class='test'><p>Hello</p></div>
]]>
</content>
</html>
<widget>
Настраиваемый виджет.
Атрибуты
Наименование | Тип | Описание |
---|---|---|
src | Строка | React компонент виджета |
Через расширенные свойства можно указать дополнительные свойства виджета.
Тело
Произвольные элементы и атрибуты.
Пример
<?xml version='1.0' encoding='UTF-8'?>
<widget src="MyWidget"
ext:prop1="value1"
ext:prop2="value2">
</widget>
Списковые виджеты
<cards>
Виджет Карточки.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
id | Строка | Идентификатор виджета | |
vertical-align | center top bottom | Выравнивание по вертикали содержимого колонок | top |
height | Строка | Высота карточек. Доступные единицы измерения: px , em , rem . При указании числа оно будет приведено к px |
Настройки
#значение по умолчанию для пагинации карточек
n2o.api.widget.cards.size=10
#значение по умолчанию для выравнивания карточек (top/center/bottom)
n2o.api.widget.cards.vertical_align=top
#значение по умолчанию для высоты карточек
n2o.api.widget.cards.height=
Тело
<content> - Список колонок (карточек)
<pagination> - Пагинация карточек
<dependencies> - Зависимости виджета
<datasource> - Встроенный источник данных
<toolbar> - Меню управляющих кнопок виджета
<actions> - Встроенные действия
Пример
<cards id="cards_id" vertical-align="center" height="400px">
<content>...</content>
<pagination>...</pagination>
</tiles>
<content>
Содержимое виджета: список колонок (карточек).
Тело
<col> - Колонка
<col>
Колонка.
Атрибуты
Наименование | Тип | Описание |
---|---|---|
size | Число | Ширина колонки согласно сетке bootstrap (1-12). |
Тело
<block> - Блок.
Пример
<content>
<col>
<block>...</block>
<block>...</block>
</col>
<col>
<block>...</block>
</col>
</content>
<block>
Блок.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
id | Строка | Идентификатор ресурса | |
text-field-id | Строка | Поле выборки, отображаемое в блоке | |
tooltip-field-id | Строка | Поле выборки, отображаемое при наведении на ячейку |
Тело
Ячейка.
<list>
Виджет Список.
Настройки
#Количество записей в списке (число)
n2o.api.widget.list.size=5
Тело
<content> - Содержимое списка
<rows> - Настройки строк списка
<pagination> - Пагинация
<dependencies> - Зависимости виджета
<datasource> - Встроенный источник данных
<toolbar> - Меню управляющих кнопок виджета
<actions> - Встроенные действия
Пример
<?xml version='1.0' encoding='UTF-8'?>
<list name="Мой список"
datasource="myList">
<content>...</content>
<pagination>...</pagination>
</list>
<content>
Содержимое списка.
Тело
<left-top>
<left-bottom>
<header>
<body>
<sub-header>
<right-top>
<right-bottom>
<extra>
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
text-field-id | Строка | Поле выборки, отображаемое в строке списка в виде текста |
Тело
Ячейка
Пример
<content>
<left-top text-field-id="image">
<image width="50px"/>
</left-top>
</content>
<rows>
Настройки строк списка.
Тело
<click> - Клик по строке
Пример
<list>
<content>
<left-top id="leftTop">
<image class="list-image"/>
</left-top>
</content>
<rows>
<click>...</click>
</rows>
<pagination>...</pagination>
</list>
<table>
Виджет Таблица.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
selection | none active radio checkbox | Вариант выбора строки таблицы | active |
width | Строка | Максимальная ширина таблицы. Доступные единицы измерения: px , em , rem , % . При указании числа оно будет приведено к px | |
height | Строка | Максимальная высота таблицы. Доступные единицы измерения: px , em , rem . При указании числа оно будет приведено к px | |
text-wrap | true false | Перенос текста в ячейке | true |
auto-select | true false | Автоматическое выделение первой строки таблицы | true |
children | collapse expand | Отображение дочерних записей в свернутом или раскрытом виде | collapse |
Для выравнивания содержимого ячеек по верхнему или по нижнему краю используйте class="text-align-top"
или class="text-align-bottom"
Настройки
#Количество записей в таблице (число)
n2o.api.widget.table.size=10
#Перенос текста в ячейке
n2o.api.widget.table.text_wrap=true
#Срабатывание (включение/выключение) чекбокса при клике по строке
n2o.api.widget.table.check_on_select=false
#Автоматическое выделение первой строки таблицы
n2o.api.widget.table.auto_select=true
#Отображение дочерних записей в свернутом виде
n2o.api.widget.table.children.toggle=collapse
#Вариант выбора записей в таблице (none/active/radio/checkbox)
n2o.api.widget.table.selection=active
#Наличие чекбоксов в первом столбце таблицы
n2o.api.widget.table.checkboxes=false
Тело
<columns> - Столбцы таблицы
<rows> - Настройки строк таблицы
<filters> - Фильтры таблицы
<pagination> - Пагинация таблицы
<dependencies> - Зависимости виджета
<datasource> - Встроенный источник данных
<toolbar> - Меню управляющих кнопок виджета
<actions> - Встроенные действия
Пример
<?xml version='1.0' encoding='UTF-8'?>
<table xmlns="http://n2oapp.net/framework/config/schema/widget-5.0"
name="Моя таблица" datasource="ds1"
size="10" children="expand">
<datasource>...</datasource>
<filters>...</filters>
<toolbar>...</toolbar>
<columns>...</columns>
<rows>...</rows>
<pagination>...</pagination>
</table>
<columns>
Столбцы таблицы.
Тело
<column> - Столбец таблицы
<filter-column> - Фильтруемый столбец таблицы
<multi-column> - Многоуровневый столбец таблицы
Пример
<columns>
<column>...</column>
<column>...</column>
<filter-column>...</filter-column>
<filter-column>...</filter-column>
<multi-column>...</multi-column>
</columns>
<column>
Столбец таблицы.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
id | Строка | Идентификатор столбца | Значение text-field-id |
src | Строка | React компонент столбца таблицы | |
class | CSS класс | Класс компонента заголовка столбца таблицы | |
style | CSS свойство | Стиль компонента заголовка столбца таблицы | |
text-field-id | Ссылка на поле выборки | Поле выборки, отображаемое в столбце в виде текста | |
tooltip-field-id | Ссылка на поле выборки | Поле выборки, отображаемое при наведении на ячейку | |
visible | true false | Столбец видимый по умолчанию? | true |
width | Строка | Ширина столбца. Доступные единицы измерения: px , em , rem , % . При указании числа оно будет приведено к px | |
resizable | true false | Можно ли изменить ширину столбца | false |
label | Строка | Наименование заголовка столбца | Значение поля выборки text-field-id , иначе значение id |
icon | Класс иконки | Иконка заголовка столбца | |
sorting-field-id | Ссылка на поле выборки | Поле, по которому сортируется столбец | Значение text-field-id |
sorting-direction | asc desc | Направление сортировки по умолчанию | |
fixed | left right | Прилипание столбца к краю | |
alignment | left right center | Выравнивание заголовка столбца таблицы | left |
content-alignment | left right center | Выравнивание контента в ячейках столбца таблицы | совпадает с alignment, если столбец не входит в multi-column |
Настройки
#Выравнивание заголовка простого и фильтрующего столбца
n2o.api.widget.column.alignment=left
#Скрытие ячейки при наведении на строку
n2o.api.widget.table.column.hide_on_blur=false
#Можно ли изменить ширину столбца
n2o.api.widget.table.column.resizable=false
Тело
Ссылка на Ячейку
<dependencies> - Зависимости столбца
Пример
<column
label="Имя"
text-field-id="firstName"
sorting-field-id="firstName"
sorting-direction="asc">
<dependencies>
...
</dependencies>
</column>
<dependencies>
Зависимости столбца.
Тело
<visibility> - Условие видимости столбца
Пример
<column text-field-id="name">
<dependencies>
<visibility>
...
</visibility>
</dependencies>
</column>
<visibility>
Видимость столбца.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
on | Строка | Поля, от которых зависит условие видимости | Вычисляется по условию |
reset | true false | Сбросить значение при скрытии | false |
Тело
Java Script выражение.
Пример
<column text-field-id="name">
<dependencies>
<visibility on="type" reset="true">type.id == 1</visibility>
<!-- Колонка видима, если type.id равен 1 -->
</dependencies>
</column>
<filter-column>
Фильтруемый столбец таблицы.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
id | Строка | Идентификатор столбца | Значение text-field-id |
text-field-id | Ссылка на поле выборки | Поле выборки, отображаемое в столбце | |
tooltip-field-id | Ссылка на поле выборки | Поле выборки, отображаемое при наведении на ячейку | |
visible | true false | Столбец видимый по умолчанию? | true |
width | Строка | Ширина столбца. Доступные единицы измерения: px , em , rem , % . При указании числа оно будет приведено к px | |
resizable | true false | Можно ли изменить ширину столбца | false |
label | Строка | Наименование заголовка столбца | Значение поля выборки text-field-id , иначе значение id |
icon | Класс иконки | Иконка заголовка столбца | |
sorting-field-id | Ссылка на поле выборки | Поле, по которому сортируется столбец | Значение text-field-id |
sorting-direction | asc desc | Направление сортировки по умолчанию | |
fixed | left right | Прилипание столбца к краю | |
src | Строка | React компонент столбца таблицы | |
class | CSS класс | Класс компонента заголовка столбца таблицы | |
style | CSS свойство | Стиль компонента заголовка столбца таблицы | |
alignment | left right center | Выравнивание заголовка столбца таблицы | left |
content-alignment | left right center | Выравнивание контента в ячейках столбца таблицы | совпадает с alignment |
Настройки
#Выравнивание заголовка простого и фильтрующего столбца
n2o.api.widget.column.alignment=left
#Скрытие ячейки при наведении на строку
n2o.api.widget.table.column.hide_on_blur=false
#Можно ли изменить ширину столбца
n2o.api.widget.table.column.resizable=false
Тело
<cell> - Ячейка столбца
<filter> - Фильтр столбца
Пример
<filter-column
label="Имя"
text-field-id="firstName"
sorting-field-id="firstName"
sorting-direction="asc">
<filter>...</filter>
<cell>...</cell>
</filter-column>
<filter>
Фильтр столбца.
Тело
Поле ввода
Пример
<filter>
<input-text>...</input-text> <!--Поле-->
</filter>
<multi-column>
Многоуровневый столбец таблицы.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
label | Строка | Наименование заголовка столбца | Значение поля выборки text-field-id , иначе значение id |
src | Строка | React компонент столбца таблицы | |
class | CSS класс | Класс компонента заголовка столбца таблицы | |
style | CSS свойство | Стиль компонента заголовка столбца таблицы | |
alignment | left right center | Выравнивание заголовка столбца таблицы | center |
content-alignment | left right center | Выравнивание контента в ячейках вложенных столбцов (значение content-alignment, указанное во вложенном столбце в приоритете) | |
width | Строка | Ширина столбца. Доступные единицы измерения: px , em , rem , % . При указании числа оно будет приведено к px |
Настройки
#Выравнивание заголовка мульти столбца
n2o.api.widget.column.multi.alignment=center
Тело
<column> - Столбец таблицы
<filter-column> - Фильтруемый столбец таблицы
<multi-column> - Многоуровневый столбец таблицы
Пример
<multi-column label="Имя">
<column>...</column>
<column>...</column>
</multi-column>
<rows>
Настройки строк таблицы.
Атрибуты
Наименование | Тип | Описание |
---|---|---|
src | Строка | React компонент строки |
class | CSS класс | Класс компонента строки. Поле выборки, отвечающее за класс строки (таким образом можно задать цвет, стиль, фон строки) |
style | CSS свойство | Стиль компонента строки |
Тело
<switch> - Переключатель
<click> - Клик по строке
<overlay> - Наведение на строку
Примеры
<rows class="{type==1?'text-muted':''}"/>
<rows>
<switch value-field-id="type">
...
</switch>
<click>
...
</click>
<overlay>
...
</overlay>
</rows>
<overlay>
Наведение на строку.
Атрибуты
Наименование | Тип | Описание |
---|---|---|
class | CSS класс | Класс компонента строки таблицы |
Тело
<toolbar> - Меню управляющих кнопок виджета
Пример
<overlay class="top">
<toolbar>
<button label="Кнопка"/>
<sub-menu label="Меню">
<menu-item label="Кнопка1"/>
<menu-item label="Кнопка2"/>
</sub-menu>
</toolbar>
</overlay>
<filters>
Фильтры таблицы.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
place | top left | Позиция фильтров | top |
fetch-on-change | true false | Запускать фильтрацию по мере ввода | false |
fetch-on-clear | true false | Запускать фильтрацию при сбросе | true |
datasource | Ссылка на источник данных | Идентификатор источника данных для виджета |
Настройки
# Запускать фильтрацию по мере ввода
n2o.api.widget.table.fetch_on_change = false
# Запускать фильтрацию при сбросе
n2o.api.widget.table.fetch_on_clear = true
Тело
Список филдсетов
Список полей
Пример
<filters>
<input-text>...</input-text> <!--Поле-->
<select>...</select> <!--Поле-->
<set>...</set> <!--Филдсет-->
<line>...</line> <!--Филдсет-->
...
</filters>
<tiles>
Виджет Плитки.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
id | Строка | Идентификатор виджета | |
cols-sm | 1, 2 | Количество колонок в мобильной версии | 1 |
cols-md | 1, 2, 3, 4, 6 | Количество колонок в пла ншетах | 2 |
cols-lg | 1, 2, 3, 4, 6, 12 | Количество колонок в десктопной версии | 3 |
height | Строка | Минимальная высота плитки. Доступные единицы измерения: px , em , rem , % . При указании числа оно будет приведено к px | |
width | Строка | Ширина плитки. Доступные единицы измерения: px , em , rem , % . При указании числа оно будет приведено к px |
Настройки
#Количество колонок в мобильной версии
n2o.api.widget.tiles.colsSm=1
#Количество колонок в планшетах
n2o.api.widget.tiles.colsMd=2
#Количество колонок в десктопной версии
n2o.api.widget.tiles.colsLg=4
#Минимальная высота плитки
n2o.api.widget.tiles.height=
#Ширина плитки
n2o.api.widget.tiles.width=
#Количество плиток на странице
n2o.api.widget.tiles.size=10
Тело
<content> - Содержимое виджета Плитки
<pagination> - Пагинаци я плиток
<dependencies> - Зависимости виджета
<datasource> - Встроенный источник данных
<toolbar> - Меню управляющих кнопок виджета
<actions> - Встроенные действия
Пример
<tiles id="tiles_id" cols-lg="6">
<content>...</content>
<pagination>...</pagination>
</tiles>
<content>
Содержимое виджета Плитки.
Тело
<block> - Список блоков.
Пример
<content>
<block>...</block>
<block>...</block>
</content>
<block>
Блок.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
id | Строка | Идентификатор ресурса | |
text-field-id | Строка | Поле выборки, отображаемое в блоке | |
tooltip-field-id | Строка | Поле выборки, отображаемое при наведении на ячейку | |
class | CSS класс | Класс компонента блока | |
style | CSS свойство | Стиль компонента блока |
Тело
Ячейка.
Пример
<block text-field-id="id" tooltip-field-id="tooltip">
<text/>
</block>
<tree>
Виджет Дерево.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
parent-field-id | Ссылка на поле выборки | Родительский узел дерева | |
value-field-id | Ссылка на поле выборки | Идентификатор узла дерева | |
label-field-id | Ссылка на поле выборки | Наименование узла дерева | |
icon-field-id | Ссылка на поле выборки | Иконка узла дерева | |
has-children-field-id | Ссылка на поле выборки | Наличие дочерних элементов | |
badge-field-id | Ссылка на поле выборки | Значок узла дерева | |
badge-color-field-id | Ссылка на поле выборки | Цвет значка узла дерева | |
badge-position | left right | Позиция значка | right |
badge-shape | rounded circle square | Форма значка | square |
badge-image-field-id | Ссылка на поле выборки | Картинка в значке | |
badge-image-position | left right | Позиция картинки в значке | left |
badge-image-shape | rounded circle square | Форма картинки в значке | circle |
image-field-id | Ссылка на поле выборки | Изображение узла дерева | |
multi-select | true false | Режим множественного выбора | true |
checkboxes | true false | Выбор в режиме чекбокс | false |
ajax | true false | Поддержка загрузки через ajax запрос | false |
Записи должны ссылаться "сами на себя" (parent-field-id), образуя древовидную структуру.
Настройки
#Позиция значка в widget <tree>
n2o.api.widget.tree.badge.position=right
#Форма значка в widget <tree>
n2o.api.widget.tree.badge.shape=square
#Позиция картинки в значке в widget <tree>
n2o.api.widget.tree.badge.image_position=left
#Форма картинки в значке в widget <tree>
n2o.api.widget.tree.badge.image_shape=circle
#Количество записей в дереве за один запрос (число)
n2o.api.widget.tree.size=200
#Поддержка загрузки через ajax запрос
n2o.api.widget.tree.ajax=false
#Режим множественного выбора
n2o.api.widget.tree.multi_select=false
#Выбор в режиме чекбокс
n2o.api.widget.tree.checkboxes=false
Тело
<pagination> - Пагинация таблицы
<dependencies> - Зависимости виджета
<datasource> - Встроенный источник данных
<toolbar> - Меню управляющих кнопок виджета
<actions> - Встроенные действия
Пример
<?xml version='1.0' encoding='UTF-8'?>
<tree xmlns="http://n2oapp.net/framework/config/schema/widget-5.0"
name="Моё дерево"
parent-field-id="parentId"
label-field-id="name"
datasource="ds1">
</tree>
Зависимости виджета
<dependencies>
Зависимости виджета.
Тело
<visibility> - Условие видимости
<enabling> - Условие доступности
Встроенный источник данных
<datasource>
Встроенный источник данных виджета.
По умолчанию id источника данных совпадает с id виджета.
Ссылка на Источник данных
Меню управляющих кнопок
<toolbar>
Меню управляющих кнопок виджета.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
class | CSS класс | Класс компонента меню | |
style | CSS свойство | Стиль компонента меню | |
place | topLeft topRight bottomLeft bottomRight topCenter bottomCenter | Место расположения меню | topLeft |
generate | crud create update delete close submit | Генерация стандартных кнопок. Можно указать несколько значений через запятую |
Для виджета Таблица атрибут generate
может иметь дополнительные значения: tableSettings
, refresh
, columns
, filters
, resize
, export
, word-wrap
.
Настройки
# Место расположения меню
n2o.api.widget.toolbar.place=topLeft
Тело
<button> - Кнопка
<sub-menu> - Кнопка с выпадающим меню
<group> - Группа кнопок
Пример
<toolbar place="topLeft" generate="crud">
<button>...</button>
<sub-menu>...</sub-menu>
<group>...</group>
</toolbar>
<group>
Группа кнопок.
Атрибуты
Наименование | Тип | Описание |
---|---|---|
generate | crud create update delete close submit | Генерация стандартных кнопок. Можно указать несколько значений через запятую |
Для виджета Таблица атрибут generate
может иметь дополнительные значения: tableSettings
, refresh
, columns
, filters
, resize
, export
, word-wrap
.
Тело
<button> - Кнопка
<sub-menu> - Кнопка с выпадающим меню
Пример
<group>
<button>...</button>
<sub-menu>
<menu-item>...</menu-item>
</sub-menu>
</group>
Встроенные действия
<actions>
Действия над виджетом.
Действия не видимы сами по себе, но на них можно ссылаться, например, из кнопок.
Тело
<action> - Список действий над виджетом
Пример
<actions>
<action>...</action>
<action>...</action>
<action>...</action>
</actions>
<action>
Действие над виджетом.
(допускает использование нескольких обработчиков действий в теле)
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию | Обязательность |
---|---|---|---|---|
id | Строка | Идентификатор действия | ! |
Тело
Обработчики действий
Пример
<action id="act1">
<close/>
<open-page page-id="test"/>
</action>
Пагинация
<pagination>
Пагинация виджета.
Атрибуты
Наименование | Тип | Описание | Значение по умолчанию |
---|---|---|---|
src | Строка | React компонент пагинации | Pagination |
prev | true false | Показать/скрыть кнопку быстрого перехода на предыдущую страницу | false |
prev-label | Строка | Текст кнопки "Предыдущая страница" | |
prev-icon | Класс иконки | Иконка кнопки "Предыдущая страница" | fa fa-angle-left |
next | true false | Показать/скрыть кнопку быстрого перехода на следующую страницу | false |
next-label | Строка | Текст кнопки "Следующая страница" | |
next-icon | Класс иконки | Иконка кнопки "Следующая страница" | fa fa-angle-right |
show-last | true false | Показать/скрыть кнопку с номером последней страницы. | true |
show-count | always never by-request | Показать общее количество записей | always |
place | topLeft topRight bottomLeft bottomRight topCenter bottomCenter | Место расположения пагинации | bottomLeft |
class | CSS класс | Класс компонента пагинации | |
style | CSS свойство | Стиль компонента пагинации |
Настройки
#Показать/скрыть кнопку быстрого перехода на пр едыдущую страницу
n2o.api.widget.list.paging.prev = false
#Показать/скрыть кнопку быстрого перехода на следующую страницу
n2o.api.widget.list.paging.next = false
#Показать/скрыть кнопку с номером последней страницы
n2o.api.widget.list.paging.show_last = true
#Показать общее количество записей
n2o.api.widget.list.paging.show_count = always
#Наименование кнопки "Предыдущая страница"
n2o.api.widget.list.paging.prev_label =
#Иконка кнопки "Предыдущая страница"
n2o.api.widget.list.paging.prev_icon = fa fa-angle-left
#Наименование кнопки "Следующая страница"
n2o.api.widget.list.paging.next_label =
#Иконка кнопки "Следующая страница"
n2o.api.widget.list.paging.next_icon = fa fa-angle-right
#CSS класс, который будет добавлен к виджету
n2o.api.widget.list.paging.className =
#Место расположения пагинации
n2o.api.widget.list.paging.place = bottomLeft
Пример
<pagination
prev="true"
next="true"
/>