Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
API виджетов описывает Данные классы описывают методы настройки структуры и функциональности виджетов:
- Используйте методы объектов объекта s_widget и класса SimpleWidget для добавления необходимой функциональности. Объект доступен при инициализации виджета.
- Используйте методы объекта s_widgets в клиентских скриптах виджетов класса SimpleWidgets для добавления необходимой функциональности. Объект инициализируется при добавлении виджета на форму или на страницу портала.
Для создания пользовательских методов используйте s_widget_custom.
Info Эти методы могут быть использованы только на стороне клиента.
SimpleWidget
s_widget
это объект класса SimpleWidget, который становится доступен при инициализации виджета.Используйте глобальный объект s_widget
s_widgets это объект класса SimpleWidgets, который инициализируется при добавлении виджета на форму или на страницу портала.
SimpleWidget
s_widget
Используйте нижеописанные методы для того, чтобы выполнить пользовательскую настройку текущего виджета.
Info | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Для того чтобы вручную вызвать метод в консоли, передайте ID экземпляра виджета в первом параметре. Например, чтобы вызвать метод:
используйте следующий способ его вызова:
|
s_widget.addTemplate(id, template, script, type)
Этот метод добавляет дочерний шаблон Используйте метод для добавления дочернего шаблона (template) к существующему по его ID id с одним из следующих типов: inner, before, after.
Параметры:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример | ||
---|---|---|---|---|---|---|---|
id | String | Да | Укажите id тега div. | Нет | steps | ||
template | String | Да | Укажите тело шаблона. | Нет | <div class="main"> | ||
script | String | Нет
| Составьте скрипт шаблона. Скрипт запускается один раз после добавления шаблона. | Нет | s_widget.addTemplate("cards", s_widget.getFieldValue("template"), "console.log('Hello world!');", "inner"); | ||
type | String | (возможные варианты: inner, before, after)Нет | innerНет | Укажите тип шаблона. Это определяет, куда добавляется шаблон. Доступные опции:
| inner | before |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Данный метод Метод не возвращает значение. |
Пример:
Code Block | ||||
---|---|---|---|---|
| ||||
<div id="steps"></div> |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
s_widget.addTemplate('steps', '<div class="main">', '', 'inner'); |
s_widget.getElements()
Данный Используйте метод возвращает , чтобы вернуть массив элементов структуры виджета. Элементы в массиве имеют тот же порядок, что и на странице.
Возвращаемое значение:
Тип | Описание | ||
---|---|---|---|
Array of HTML elements | Метод возвращает массив элементов структуры виджета | Array<elements> | Элементы структуры виджета, собранные в массив. |
Пример:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
s_widget.getElements(); |
s_widget.getFieldValue(key)
Используйте этот метод для получения значения данных виджета, определённых определенных ключом (key).
Параметр:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
key | String | Да | Укажите ключ поля, который должен использоваться для получения значения. | Нет | element |
Возвращаемое значение:
Тип | Описание |
---|---|
Any | Значение Метод возвращает значение поля, определённого указанным заданного ключом (key). |
Пример:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
s_widget.getFieldValue('element'); |
s_widget.getId()
Данный Используйте метод возвращает для возращения ID экземпляра виджета.
Возвращаемое значение:
Тип | Описание |
---|---|
String | Метод возвращает ID экземпляра виджета. |
Пример:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
s_widget.getId(); |
s_widget.getOptionValue(key)
Используйте данный метод для получения значения value, заданного в опции keyопции ключа (key) из Опций схемы виджета.
Параметр:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
key | String | Да | Укажите ключ опции из Опций схемы виджета. | Нет | label |
Возвращаемое значение:
Тип | Описание |
---|---|
Any | Значение Метод возвращает значение опции виджета, определённой заданной ключом (key). |
Пример:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
s_widget.getOptionValue('label'); |
s_widget.removeTemplate(id)
Используйте данный метод, чтобы удалить все дочерние узлы и содержимое указанного элемента. Сам элемент и его атрибуты при этом сохраняются.
Параметр:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
id | String | Да | Укажите id тега div. | Нет | element1 |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Данный метод Метод не возвращает значение. |
Пример:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<div id="element1"> Remove meУбрать </div> <button buttonType="approve" event-click="window.s_widget_custom.remove();"> Click meДобавить </button> |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#element1 { background-color: yellow; height: 20px; } |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
; (() => { window.s_widget_custom = window.s_widget_custom || {}; window.s_widget_custom.remove = function () { s_widget.removeTemplate('element1'); } })(); |
s_widget.setFieldValue(key, value)
Используйте этот метод, чтобы задать значение (value) для ключа (key).
Info |
---|
Если задаваемое значение равно 'null', например, |
Параметры:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
key | String | Да | Укажите ключ поля, значение которого нужно изменить. | Нет | table_name |
value | Any | Да | Укажите новое значение поля. | Нет | tableName |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Данный метод Метод не возвращает значение. |
Пример:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
; (async () => { const tableName = s_form.getTableName(); const recordId = s_form.getUniqueValue(); const serviceId = s_form.getValue('service'); const serviceDisplayValue = s_form.getDisplayValue('service'); s_widget.setFieldValue('table_name', tableName); s_widget.setFieldValue('record_id', recordId); s_widget.setFieldValue('service', { database_value: serviceId, display_value: serviceDisplayValue }); await s_widget.serverUpdate(); })(); |
s_widget.serverUpdate()
Этот Используйте метод переносит , чтобы перенести данные на сервер, где выполняется серверный скрипт виджета, в результате чего обновляются его данные.
Возвращаемое значение:
Тип | Описание |
---|---|
Object | Метод возвращает объект Promise, содержащий ответ сервера. |
Пример:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
; (async () => { const tableName = s_form.getTableName(); const recordId = s_form.getUniqueValue(); s_widget.setFieldValue('table_name', tableName); s_widget.setFieldValue('record_id', recordId); const response = await s_widget.serverUpdate(); console.log(response.getData().data); })(); |
s_widget.setOptionValue(key, value)
Используйте этот метод, чтобы задать значение (value) для ключа (key) опций виджета.
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
key | String | Да | Укажите ключ опции виджета из Опций схемы виджета. | Нет | label |
value | Any | Да | Укажите новое значение опции. | Нет | Name |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Данный метод Метод не возвращает значение. |
Пример:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
s_widget.setOptionValue('label', 'названиеНаименование'); |
s_widget.showData()
Используйте этот метод для отображения данных виджета в консоли.
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Данный метод Метод не возвращает значение. |
Пример:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
s_widget.showData(); |
SimpleWidgets
s_widgets
Вызывайте методы у глобального объекта s_widgets в своих скриптах при добавлении виджета на форму или страницу для взаимодействия с виджетом.
s_widgets.getFieldValue(widgetInstanceID, key)
Данный метод Метод возвращает значение из данных виджета для ключа (key) и ID экземпляра виджета (widget instance IDwidgetinstanceID).
Параметры:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
widgetInstanceID | String (значение sys_id) | Да | Укажите ID экземпляра виджета. | Нет | 169598365414458401 |
key | String | Да | Укажите ключ поля, значение которого вы хотите получить. | Нет | name |
Возвращаемое значение:
Тип | Описание |
---|---|
Any | Возвращает Метод возвращает значение объекта. |
Пример:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
s_widgets.getFieldValue('157555401214600424', 'name'); |
s_widgets.getForm()
Данный метод Метод возвращает объект формы, размещенный при помощи тега <form> <Form> или <remform>.
Параметр:
Название | Тип | Обязательный | Значение по умолчанию |
---|---|---|---|
name | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Object | Метод возвращает объект SimpleForm. |
Пример:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
const builtInForm = s_widgets.getForm('custom'); await builtInForm.save(); |
s_widgets.getWidgets()
Этот метод возвращает список ID всех экземпляров виджетов на странице. ID включаются в ответ в том же порядке, в котором виджеты расположены на странице.
Возвращаемое значение:
Тип | Описание |
---|---|
Array | Список Метод возвращает список ID всех экземпляров виджетов на странице странице. |
Пример:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
s_widgets.getWidgets(); |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
['160767740511016793', '160767742115787725', '160767742915897037', '160767743612372124', '158965632914393037', '158965975317960937', '161062077113210360'] |
s_widgets.setFieldValue(widgetInstanceID, key, value)
Используйте данный метод, чтобы задать значение (value) для ключа (key) в данных виджета и ID экземпляра виджета (widget instance IDwidgetinstanceID).
Параметры:
Название | Тип | Обязательный | Описание | Значение по умолчанию | Пример |
---|---|---|---|---|---|
widgetInstanceID | String (значение sys_id) | Да | Укажите ID экземпляра виджета. | Нет | 169598365414458401 |
key | String | Да | Укажите ключ поля, значение которого вы хотите задать. | Нет | name |
value | Any | Да | Укажите новое значение поля. | Нет | Alex |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
s_widgets.setFieldValue('157555401214600424', 'name', 'Александр'); |
Table of Contents | ||||
---|---|---|---|---|
|