Начало работы


Blank CLI


Blank Schema


Serverside JS API


HTTP API


Интеграция


Actions

Actions — скрипты на JavaScript, производящие некоторые действия над объектами, хранящимися в Store. Действия доступны через Websocket API и REST API. Формат описания Actions подробно рассмотрен в Store Reference. Выполнять Actions могут только авторизованные пользователи.

Скрипты имееют возможность выполнять запросы к базе данных с помощью модуля $db.

Доступные объекты

$item

Объект над которым выполняется Action. Для StoreActions $item не передаётся.

$user

Пользователь, выполняющий Action.

$data

Данные формы, заполненной пользователем, в случае, если определены props для Action.

$filter

Только для StoreActions. При вызове из веб-приложения содержит текущие значения фильтров.

$request

Данные HTTP запроса, в случае, если Action.type установлен в http, либо если Action вызывается через REST API. Подробнее об объекте $request читайте в разделе Serverside JS API: $request

Возврат результата

В случае, если скрипт возвращает какие-либо данные, они будут переданы инициатору вызова Action. Если скрипт выполнился неудачно, следует «бросить ошибку». Для передачи текста ошибки, используется объект UserError.

throw new Error("some error"); // текст ошибки будет выведен в логе, но не передан инициатору.
throw new UserError("some error with text"); // текст ошибки будет выведен в логе, и передан инициатору.

Если скрипт выполняет асинхронные инструкции, следует вернуть Promise.

Для HTTP Actions возвращаемый объект должен соответствовать структуре Response описанной в HTTP Hooks.