Skip to main content

Значения по умолчанию

Виджеты можно загрузить со значениями по умолчанию. Для этого источник данных виджета не должен иметь ссылку на выборку:

Источник данных со значениями по умолчанию
<datasource id="main"/>

Или должен быть установлен режим значений по умолчанию:

Источник данных с режимом значений по умолчанию
<datasource id="main"
query-id="person"
default-values-mode="defaults"/>
note

При явно заданном режиме значений по умолчанию default-values-mode="defaults", ссылка на выборку query-id игнорируется.

Если один и тот же виджет при открытии страницы должен работать в двух режимах (по умолчанию и через выборку), то следует переопределить свойство default-values-mode при открытии страницы:

Источник данных при открытии модального окна
<show-modal page-id="personCard">
<datasources>
<!-- Источник данных main на странице personCard
будет работать в режиме значений по умолчанию -->
<datasource id="main"
default-values-mode="defaults"/>
<datasources>
</show-modal>

Значения по умолчанию полей

Значение по умолчанию в простых полях задаётся атрибутом default-value.

Значение по умолчанию для простых полей
<input-text id="name"
default-value="Ваше имя"/>

Для списковых полей через элемент default-value:

Значение по умолчанию для списковых полей
<select id="gender">
<default-value id="1"
name="Мужской"/>
</select>

Значения по умолчанию из выборки

Если значения по умолчанию частично получаются из выборки, а частично задаются в полях, то можно использовать режим слияния с помощью default-values-mode:

Выборка значений по умолчанию
<datasource id="main"
query-id="persons"
default-values-mode="merge">
<filters>
...
</filters>
</datasource>

Поля выборки, которые вернут null, будут заменены значениями по умолчанию, заданными в полях.

Вычисляемые значения

Можно задать значение по умолчанию с помощью JavaScript выражения:

Значение по умолчанию в виде JavaScript выражения
<output-text id="randomNum" default-value="`Math.random()`"/>

Функции работы с данными

В контексте JavaScript выражения доступны функции и переменные для удобной работы с датами, числами, списками.

ДоступОписание
$Библиотека функций N2O
_https://lodash.com/
moment()https://momentjs.com/
numeral()http://numeraljs.com/

Функции дат

В библиотеке функций N2O имеются удобные функции для работы с датами:

ФункцияОписание
now()Текущая дата и время
today()Текущая дата
beginWeek()Начало недели
endWeek()Конец недели
beginMonth()Начало месяца
endMonth()Конец месяца
beginQuarter()Начало квартала
endQuarter()Конец квартала
beginYear()Начало года
endYear()Конец года

Доступ к функциям дат осуществляется через $.:

Значение по умолчанию в виде функции даты и времени
<date-time id="dt" default-value="`$.now()`"/>

Ссылки на данные

Можно задать значение по умолчанию с помощью ссылки на данные. Для этого нужно задать значение по умолчанию в фигурных скобках:

Значение по умолчанию через ссылку на данные
<output-text id="person.id"
default-value="{id}"
ref-datasource="persons"
ref-model="resolve"
ref-page="parent"/>

Данные на которые ведет ссылка задается атрибутами ref-datasource, ref-model и ref-page.