bitrix24-library
Promise-обёртка для работы с JavaScript REST API Bitrix24 и набор новых методов
Установка и подключение
npm i -S bitrix24-library@latest
import { Bitrix24 } from 'bitrix24-library';
Bitrix24().then((BX24) => {
console.log(BX24.getDomain());
const RestCall = BX24.createBatch();
RestCall.batch({
info: ['app.info'],
profile: ['profile'],
}).then(console.info);
});
Подключение и вызов методов на примере Vue.js
// main.js
import { createApp } from 'vue';
import { Bitrix24 } from 'bitrix24-library';
import App from './App.vue';
Bitrix24().then((BX24) => {
createApp(App).provide('$BX24', BX24).mount('#app');
});
<!-- Composition API -->
<script setup lang="ts">
import { inject } from 'vue';
import type { IBitrix24Library } from 'bitrix24-library';
const BX24 = inject<IBitrix24Library>('$BX24')!;
console.info(BX24.getDomain());
const RestCall = BX24.createBatch();
RestCall.batch({
info: ['app.info'],
profile: ['profile'],
}).then(console.info);
</script>
<!-- Options API -->
<script lang="ts">
export default {
mounted() {
console.info(this.$BX24.getDomain());
const RestCall = this.$BX24.createBatch();
RestCall.batch({
info: ['app.info'],
profile: ['profile'],
}).then(console.info);
},
inject: ['$BX24'],
};
</script>
API
Асинхронные методы
.initAsync()
— Добавляет в список обработчик события "библиотека готова к работе".installAsync()
— Возможность установить обработчик события "приложение запускается первый раз для текущего пользователя".refreshAuthAsync()
— Принудительное обновление ключа авторизации.callBatchAsync(calls[, bHaltOnError])
— Пакетное выполнение запросов по несколько элементов (в настоящий момент не более, чем по 50).selectUsersAsync([multiple])
— Показать стандартный диалог выбора пользователей.selectAccessAsync([disablesValues])
— Показать стандартный диалог выбора прав доступа.selectCRMAsync([config])
— Показать стандартный диалог выбора сущности CRM.resizeWindowAsync(width, height)
— Изменяет размер фрейма с приложением.fitWindowAsync()
— Устанавливает размер фрейма с приложением в соответствии с размерами содержимого фрейма.setTitleAsync(title)
— Устанавливает заголовок страницы.readyAsync()
— Устанавливает обработчик события "DOM-структура документа готова к работе".loadScriptAsync(src)
— Загружает и выполняет клиентский js-файл.openApplicationAsync([[params], settings])
— Метод открывает приложение.scrollParentWindowAsync(scroll)
— Метод прокручивает родительское окно.openPathAsync(path)
— Метод открывает указанный путь внутри портала в слайдере