proklung / js-extensions
Installs: 6
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 1
Forks: 1
Open Issues: 0
Language:JavaScript
Type:bitrix-d7-module
Requires
- php: >=7.4
- composer/installers: ~1
This package is auto-updated.
Last update: 2024-12-12 15:11:47 UTC
README
Зачем?
Экспериментальные цели. Поиск наиболее технологичных решений в максимально-упрощенной инженерной среде.
Установка
composer.json:
"repositories": [ { "type": "git", "url": "https://github.com/proklung/bitrix.js.extensions" } ]
composer require proklung/bitrix.js.extensions
Пруфы
https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=11981
Функционал
Компоненты
Пара оберток:
proklung.extension.run
Запуск и инициализация JS extension. По сути обертка над php \Bitrix\Main\UI\Extension::load('namespace.extension')
$APPLICATION->IncludeComponent('proklung:extension.run', '', [ 'EXTENSION' => 'proklung.bxui', // JS extension 'SELECTOR' => 'uix' // ID ], false );
или (без шаблона)
$APPLICATION->IncludeComponent('proklung:extension.run', '', [ 'EXTENSION' => 'proklung.webpacked', 'NO_TEMPLATE' => true ], false );
proklung.app
$APPLICATION->IncludeComponent('proklung:app', '', [], false );
Подвяжет Vue на селектор app
(например, на самом верхнем враппере страницы)
JS extensions
bxui
Набор стандартного битриксового UI, обернутого в формат js extension. Форк https://github.com/astrotrain55/vue-bitrix24
.
Вырезано ненужное, переработано для локальных нужд.
vueinvoker
"Предназначен для инициализации Vue компонентов на странице. Он упрощает использование Vue в классическом веб-приложении, когда нет возможности использовать один "корневой" экземпляр Vue".
<div class="vue-component" data-component="DemoApp" data-initial='{"test": "data"}'></div>
Упакован в extension и вызывается так:
$APPLICATION->IncludeComponent('proklung:extension.run', '', [ 'EXTENSION' => 'proklung.vueinvoker', 'NO_TEMPLATE' => true ], false );
webpacked
Заготовка под разработку "расширения" полностью собираемого с помощью Webpack.
ui-select
Обертка над "Диалогом выбора сущностей" Битрикс24.
Пример вызова (через компонент-обертку):
$APPLICATION->IncludeComponent('proklung:ui_select', 'bitrix24', [ 'SELECT_ID' => 'cities', 'DISABLED' => true, 'VALUES' => (array)$data["ALL_CITIES_LIST"], 'SELECTED_VALUE' => 'Москва', 'MULTIPLE' => false, 'PLACEHOLDER' => 'Города' ], false );