Получить контекст вызова прокси-функции BX24.proxyContext
Выберите инструмент для разработки с AI-агентом:
- используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
- используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации
BX24.proxyContext(): any;
Метод BX24.proxyContext возвращает значение this, с которым вызвали прокси-функцию из BX24.proxy.
Внутри прокси-функции this заменен на объект thisObject, а исходное значение возвращает этот метод. Например, если прокси-функция обрабатывает клик по кнопке, метод вернет эту кнопку, а не объект thisObject.
Значение доступно, пока выполняется синхронная часть прокси-функции. Если оно понадобится позже, например после await или в таймере, сохраните его в переменную в начале функции.
Метод работает на странице приложения, где подключена библиотека BX24.js, и не обращается к Битрикс24, поэтому ждать BX24.init не нужно. Собственный scope методу не нужен.
Параметры метода
Без параметров.
Пример кода
Как использовать примеры в документации
Один обработчик на две кнопки — метод показывает, какая из них нажата:
<button id="save">Сохранить</button>
<button id="cancel">Отменить</button>
<script>
BX24.ready(function () {
const form = {
onClick: function () {
const button = BX24.proxyContext();
console.log('Нажата кнопка', button.id); // save или cancel
}
};
const handler = BX24.proxy(form.onClick, form);
BX24.bind(document.getElementById('save'), 'click', handler);
BX24.bind(document.getElementById('cancel'), 'click', handler);
});
</script>
Обработка ответа
Метод синхронно возвращает исходный this текущего вызова прокси-функции. Тип результата зависит от того, как прокси-функцию вызвали.
Возвращаемые данные
|
Название |
Описание |
|
result |
Исходный |
Например, если в примере выше нажать кнопку «Сохранить», метод вернет элемент этой кнопки:
<button id="save">Сохранить</button>
Обработка ошибок
Кодов ошибок метод не возвращает.
|
Ситуация |
Что происходит |
Что делать |
|
Метод вызван вне прокси-функции |
Обычно возвращает |
Вызывать метод внутри функции, переданной в BX24.proxy |
|
Прокси-функция вызвана напрямую, например |
Возвращает |
Назначить прокси-функцию обработчиком события или вызвать ее как метод объекта |
Если прокси-функция завершилась ошибкой, библиотека не восстанавливает прежнее значение. После этого метод вне прокси-функций может возвращать this прерванного вызова, а не null. Поэтому не проверяйте результат на null, чтобы узнать, вызван ли код из прокси-функции.