Создание и публикация клиентского расширения
Клиентское расширение разрабатывается на языке TypeScript с последующей компиляцией в JavaScript.
-
Скопируйте к себе в рабочую папку каталог
ProjectTemplates\TemplateWebExtension\из репозитория WebClient-Samples. -
Настройте проект:
-
Переименуйте папку
TemplateWebExtension— укажите название расширения (например, "MyWebExtension"). -
В файле
MyWebExtension\copy-path.jsизмените значения:-
SITE_ROOT— укажите относительный путь к папке, в которую будут выгружены файлы, полученные при сборке; для автоматизации процесса публикации файлов на сервере Web-клиента можно указать относительный путь к папке Web-клиента:Каталог-установки-Web-клиента/Site. -
EXTENSION_NAME— укажите название расширения (в данном примере — "MyWebExtension").
-
-
Откройте папку
MyWebExtensionв командной строке и выполните команду:npm install. -
Создайте в папке
MyWebExtension\srcфайлts/tsxс кодом расширения.Примеры клиентских расширений приведены в следующих пунктах раздела, а также в репозитории "ДоксВижн". -
Измените содержимое файла
src\Index.ts. В файле должна выполняться регистрация расширения с учетом реализованных в нем функций:
extensionManager.registerExtension({
name: "My web Extension",
version: "1.0",
getLocalizations: ... , (1)
controls: ... , (2)
globalEventHandlers: ... , (3)
globalServices: ... , (4)
layoutServices: … (5)
})
| 1 | Расширение добавляет локализованные ресурсы. |
| 2 | Расширение добавляет элементы управления. |
| 3 | Расширение добавляет обработчики событий. |
| 4 | Расширение добавляет публичные сервисы. |
| 5 | Расширение добавляет публичные сервисы, имеющие особое поведение в рамках каждой конкретной разметки. |
Описание изменений, которые необходимо выполнить в файле Index.ts, приведено в описании примеров расширений, добавляющих обработчики событий, локализованные ресурсы и клиентские компоненты элементов управления.
-
Откройте папку
MyWebExtensionв командной строке и выполните команду:npm run build. -
Скопируйте папку
%SITE_ROOT%\Content\Modules\MyWebExtensionвКаталог-установки-Web-клиента\5.5\Site\Content\Modules. -
После завершения отладки клиентского расширения может быть собрана "релизная версия". Для этого, находясь в командной строке в папке MyWebExtension, выполните команду:
npm run build:prod.