BX.ajax.runComponentAction
BX.ajax.runComponentAction(component, action[, config])
BX.ajax.runComponentAction - это метод для запуска аякс-действий в компоненте, который возвращает BX.Promise. Если был просрочен csrf-токен, то он сам попробует его восстановить (выполняется только одна попытка) и повторить запрос. Если от сервера пришёл ответ, в котором status не равен success
, то promis'y выполняется reject.
Параметры
Параметр | Описание | С версии |
---|---|---|
component {string} | Полное имя компонента, куда шлём запрос. Например, bitrix:main.post.form или vendor:example. | |
action {string} | Действие, которое необходимо запустить. Например, greet. | |
config {Object} | Параметры:
|
Если ответ не будет содержать ключи data и status, запрос будет обрабатываться с ошибкой Network Error.
Пример
Представим, мы делаем аякс-запрос на компонент vendor:example из примера. И вызываем там действие greet.
BX.ajax.runComponentAction('vendor:example', 'greet', { mode: 'class', //это означает, что мы хотим вызывать действие из class.php data: { person: 'Hero!' //данные будут автоматически замаплены на параметры метода }, analyticsLabel: { viewMode: 'grid', filterState: 'closed' } }).then(function (response) { console.log(response); /** { "status": "success", "data": "Hi Hero!", "errors": [] } **/ }, function (response) { //сюда будут приходить все ответы, у которых status !== 'success' console.log(response); /** { "status": "error", "errors": [...] } **/ });
Дополнительно
- Контроллеры в курсе "Разработчик Bitrix Framework".
© «Битрикс», 2001-2024, «1С-Битрикс», 2024