Уменьшение времени загрузки скриптов
Из-за внушительной функциональности продукта, скрипты имеют достаточно большой размер. При первой загрузке Web приложения, либо при отключенном кэшировании браузера, загрузка может занимать некоторое время, особенно при низкоскоростном интернет-соединении. Мы предлагаем два варианта решения этой проблемы: использовать упакованные скрипты, либо использовать частичный функционал, и загружать только то, что требуется. Допускается одновременное использование указанных вариантов.
Упакованные скрипты имеют такую же структуру, что и обычные скрипты, но имеют окончание *.pack.js в имени файла. Такие скрипты содержат блок упакованных данных в виде JavaScript переменной, и компактный распаковщик. При загрузке всех скриптов, распаковщик автоматически распаковывает все загруженные данные, и запускает подготовленный скрипт на выполнение. Распаковка занимает некоторое время, но при определенных обстоятельствах - например, при медленном интернет-соединении - это время намного меньше, чем скорость загрузки обычных скриптов.
Для использования упакованных скриптов всё, что вам понадобится сделать - это установить свойство $js->usePacked в значение true, например:
index.php |
<?php use Stimulsoft\Report\StiReport;
$report = new StiReport(); $report->javascript->usePacked = true; ?>
|
Скрипт stimulsoft.reports.js содержит в себе весь функционал по построению и экспортированию отчетов. Если для генерации отчетов вам требуются только некоторые из возможностей, предусмотрена загрузка только необходимых частей генератора, содержащих определенный набор возможностей. Например, если в ваших отчетах не используются карты, то их можно не загружать. Это ускорит загрузку Web проекта и уменьшит потребление памяти браузером.
Информация |
Данная возможность реализована только для ядра генератора отчетов, вьювер и дизайнер нельзя разделить на части, их скрипты будут загружаться целиком одним блоком.
|
Для использования частичной загрузки скриптов, достаточно установить нужные опции для свойства javascript у объекта отчета:
index.php |
<?php use Stimulsoft\Report\StiReport;
$report = new StiReport(); $report->javascript->reportsChart = true; $report->javascript->reportsExport = true; $report->javascript->reportsImportXlsx = true; $report->javascript->reportsMaps = false; $report->javascript->blocklyEditor = false; ?>
|
Каждая опция управляет загрузкой скрипта, содержащего определённый функционал. В данной таблице представлен весь набор скриптов, которые можно загрузить раздельно:
Наименование |
Описание |
javascript->reportsExport |
Содержит алгоритмы для экспортирования построенного отчета в различные форматы - PDF, HTML, Excel, RichText и другие. |
javascript->reportsChart |
Содержит компоненты для работы со всеми типами диаграмм в отчете. |
javascript->reportsMaps |
Содержит компоненты для работы с региональными и онлайн картами. |
javascript->blocklyEditor |
Содержит визуальный редактор Blockly для создания скриптов событий в отчете. Сам обработчик событий встроен в движок отчетов. |
javascript->reportsImportXlsx |
Содержит алгоритмы для работы с Excel источниками данных. |
Информация |
Компоненты вьювер отчетов и дизайнер отчетов также имеют свойство javascript, при помощи которого можно управлять настройкой скриптов указанным выше способом.
|