Добавление пользовательских виджетов

Начиная с ArcGIS Enterprise 11.0 вы сможете добавлять пользовательские виджеты Experience Builder на портал. Это значит, что вы можете выбрать пользовательские виджеты в среде построения при создании приложения. Перед тем как использовать пользовательский виджет, его надо разместить на веб-сервере и зарегистрировать на портале. В целях безопасности регистрировать пользовательские виджеты могут только администраторы портала. Опубликованные для всех пользовательские виджеты могут использоваться в общедоступных приложениях для анонимного доступа.

Примечание:

После обновления ArcGIS Enterprise до версии 11.1, если вы обнаружите, что локализованный язык вашего пользовательского виджета не работает, проверьте, является ли первая строка файла локализованного языка define({. Если это так, вы должны обновить файл следующим образом:

Предыдущий код

define({

// strings

})

Новый код

System.register([], function (_export) {return {execute: function () {_export({

// strings

})}}});

Разместите пользовательский виджет на веб-сервере

Размещение пользовательского виджета на веб-сервере не отличается от размещения любого веб-приложения. Вам нужно установить и настроить веб-сервер. Обычно веб-серверы включают IIS и Apache HTTP Server.

Для размещения пользовательских виджетов на веб-сервере выполните следующие действия:

  1. Включение анонимного доступа к виртуальной директории, в которой размещены ваши виджеты.

    К местоположению для размещения должен быть анонимный доступ.

  2. Включите HTTPS.

    Включите доступ HTTPS на веб-сервере для предотвращения создания смешанных ресурсов. Experience Builder отфильтровывает смешанные ресурсы, вызванные загрузкой HTTP по подключению HTTPS. Кроме того, у вашего сервера должен быть допустимый SSL-сертификат, выданный центром сертификации, для установления подключения HTTPS.

  3. Включите Совместное использование ресурсов между разными источниками (CORS).

    Experience Builder работает под доменом портала, который может отличаться от домена веб-сервера, на котором размещен ваш пользовательский виджет. Вам нужно включить CORS в веб-сервере для активации доступа к нему из домена вашего портала.

  4. Добавьте JSON-обработчик на свой веб-сервер.

    Все виджеты состоят из файла манифеста JSON с описанием свойств. Некоторые веб-серверы не распознают по умолчанию расширение JSON. В таких случаях требуется добавить его на свой сервер, как новый MIME-тип на уровне приложения или более высоком уровне. У MIME-типа должно быть расширение файла .json и application/json в качестве MIME-типа.

  5. Компиляция пользовательского виджета.

    Прежде чем вы сможете разместить пользовательский виджет, вы должны его скомпилировать. Вы должны скопировать папку с пользовательским виджетом в директорию arcgis-experience-builder/client/your-extension/widgets. Затем вам нужно запустить npm run build:prod в директории клиента. Как только вы это сделаете, скомпилированный виджет появится в директории client/dist-prod/widgets.

  6. Разверните на своем веб-сервере пользовательский виджет.

    Вы можете скопировать папку client/dist-prod/widget/ на веб-сервер. После разворачивания нужно получить URL файла манифеста вашего пользовательского виджета. Пример URL файла манифеста - <server.domain.com>/<my widget>/manifest.json.

Зарегистрируйте пользовательский виджет

Вам нужно зарегистрировать каждый виджет на вашем портале. Для регистрации пользовательского виджета требуются права администратора портала.

  1. В окне браузера войдите на портал.
  2. Щелкните вкладку Мои ресурсы на странице содержания.
  3. Щелкните Добавить элемент и выберите Приложение.
  4. Выберите Виджет Experience Builder и введите URL файла манифеста.

    Пример URL файла манифеста - <server.domain.com>/<my widget>/manifest.json.

  5. Щелкните окно Заголовок.

    В заголовке элемента автоматически появится файл манифеста. Кроме того, можно вручную отредактировать заголовок.

  6. В поле Теги добавьте теги.
  7. Нажмите кнопку Добавить элемент.

    Теперь пользовательский виджет доступен на вкладке Мои ресурсы на странице содержания как тип Виджета Experience Builder.

Опубликуйте пользовательский виджет

Как администратор портала, вы можете опубликовать пользовательские виджеты в группах вашей организации, которым требуется к ним доступ, в организации или, при необходимости, для всех.

Внимание:

Приложение загрузит только пользовательский виджет, зарегистрированный в той же организации, что и пользователи, имеющие права доступа к данному приложению.

В Моих ресурсах найдите пользовательский виджет и опубликуйте его. При открытии Experience Builder пользовательский виджет отображается в группе Пользовательские на вкладке Вставить виджет.

Внимание:

Если при загрузке пользовательского виджета появится сообщение об ошибке 404, убедитесь, что виджету не требуются модули, использующие имя пакета виджета. Вместо этого используйте относительный путь для того, чтобы загрузить модули.

Обновите пользовательский виджет

Вы не можете обновить пользовательский виджет на портале. Однако вы можете обновить структуру HTML и код JavaScript размещенного пользовательского виджета на веб-сервере.