Получение сервисов в клиентском компоненте

В клиентском компоненте элемента управления можно получить доступ к стандартным (список в справочнике JS API, раздел Services) и разработанным клиентским сервисам.

Ссылка на сервисы автоматически передается при загрузке клиентского компонента. Чтобы получить ссылку, нужно добавить в класс параметров поле services с указанием типов требуемых сервисов:

@rw services?: $EditOperationStore & $UrlStore & $RequestManager;

В данном примере в services сохраняются сервисы: $EditOperationStore, $UrlStore, $RequestManager.

Обратиться к сервису можно следующим образом:
let editOperations = this.state.services.editOperations.getAll(); (1)
1 Получаем список всех операций редактирования с помощью метода getAll сервиса editOperations.

Сервисы $CardId, $CardTimestamp, $CardInfo, $RowInfo и $RowId возвращают информацию о карточке, с данными которой связан текущий элемент управления.

Если элемент управления связан с данными связанной карточки, а не карточки, в разметке которой он используется, указанные сервисы будут возвращать информацию именно о связанной карточке.

Получить данные о текущей карточке можно с помощью сервиса $Layout. Например, следующий код демонстрирует способ получения идентификатора карточки:

let cardId = this.state.services.layout.cardInfo.id;