1

В эти дни я нахожу, что все больше и больше работаю на стороне клиента, и поэтому мои файлы JS имеют тенденцию становиться все больше и больше. Я дошел до того, что большинство HTML-страниц имеют полдюжины или более импорта JS в заголовке, и я понял, что это вредит временам загрузки.Варианты/инструменты для сборки JavaScript

Я недавно обнаружил это script, который позволяет загружать несколько файлов JS с одним HTTP-запросом. Он написан на PHP и является поклонником Django, который я планирую переписать в Python. Я планирую использовать перенаправление HTTP в предварительно ограниченном и объединенном файле и задавался вопросом, что будет стоить 301. Пожалуйста, дайте мне знать, если это глупая идея.

С другой стороны, я немного беспокоюсь о введении логики сценариев в порцию статических файлов, и мне было интересно, существует ли жизнеспособная альтернатива сборки, например, муравьиная задача, которая объединяет и минимизирует JS-файлы и заменяет несколько JS-файлов загружает в HTML-заголовок с одним большим, как это делает скрипт.

ответ

4

Для PHP я, безусловно, предпочитаю делать это динамически, потому что, если вы введете шаг сборки, вы потеряете одно из основных преимуществ использования PHP. На самом деле, рискуя саморекламой, я написал Supercharging Javascript in PHP по этому вопросу.

Конечно, другие технологии могут отличаться.

Снова это PHP, но это не просто кусок кода для использования (хотя вы можете перейти прямо к Part 6, если вы просто хотите получить какой-то полностью рабочий код) и может иметь значение для вас с точки зрения выявления проблем и правильно делаете и почему вы так поступаете.

Я предпочитаю иметь пакеты Javascript-файлов (возможно, только один для всего приложения), а затем каждая страница просто активирует поведение, которое ему требуется с помощью стандартных средств, но все тела кода находятся в более крупном кешированном и мини-JS-файле. Он работает быстрее, и это хороший способ.

Если вы хотите, чтобы это было частью процесса сборки, что является разумным решением, если у вас есть процесс сборки в любом случае, то я предлагаю вам снизить свой код. Для этого есть много инструментов. Посмотрите на YUI Compressor.

Если вы делаете статический комбайн JS-файлов, то все остальное, упомянутое выше, например gzipping и связанные с ним проблемы, по-прежнему актуально.