Значения по умолчанию
Виджеты можно загрузить со значениями по умолчанию. Для этого источник данных виджета не должен иметь ссылку на выборку:
<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" submit-operation-id="create"> <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 выражения:
<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
.