Как организовать и минимизировать множество файлов javascript?

У меня есть проект, написанный на PHP и JavaScript.

Например, у меня есть два основных файла JavaScript: main1.js и main2.js.

Они используют одни и те же функции, и я хочу извлечь функции в lib.js и т. д.

В среде разработки полезнее использовать 3 разных файла, но на производстве я бы хотел иметь 2 мини-файла с включенным lib.js.

Я хочу сразу увидеть изменения в dev без какой-либо предварительной обработки, и я хочу использовать некоторую предварительную обработку в рабочей среде.

Например, я могу написать функцию javascript require(имя файла), которая загружает необходимый js-файл, но как указать minifyer включить файл в производственную среду?


person varan    schedule 11.12.2013    source источник
comment
можно использовать скрипт кофе.   -  person Suleman Ahmad    schedule 11.12.2013
comment
есть много доступных инструментов сжатия js. попробуйте jscompress.com или Компрессор YUI   -  person diEcho    schedule 11.12.2013
comment
3 != много. Цель состоит в том, чтобы уменьшить размер запроса или объединить файлы js?   -  person Anthony    schedule 11.12.2013
comment
оба. Будет много файлов js, и их нужно объединить и минимизировать при развертывании.   -  person varan    schedule 11.12.2013
comment
кофескрипт не совместим с javascript. мне не нравится его синтаксис   -  person varan    schedule 11.12.2013
comment
то, что вам не нравится его синтаксис, не делает его совместимым.   -  person Andrew Willis    schedule 13.12.2013


Ответы (4)


Вам следует изучить компрессор YUI.

а также в создании makefiles

вы также можете сжимать CSS с помощью YUI Compressor

person Andrew Willis    schedule 11.12.2013
comment
Я ненавижу YUI Compressor, но я подозреваю, что это потому, что это единственный минификатор, который я использовал, и я ненавижу минификацию. Есть ли на данный момент выигрыш в производительности от сокращения запроса на 10-20 КБ? - person Anthony; 11.12.2013
comment
это зависит от того, как вы хотите организовать свой код, используя YUI Compressor. У меня есть более 10 файлов JavaScript, которые объединяются в один, сохраняя мой код организованным и простым в управлении. Кроме того, если у вас есть более 10 запросов к серверу, накладные расходы будут намного больше, чем 10-20 КБ: в зависимости от того, сколько запросов ваш браузер может обрабатывать одновременно, вы можете получить несколько файлов, блокирующих загрузку других файлов, пока они не будут завершены. . Кстати, именно поэтому на спрайт-лист иногда помещают и маленькие изображения. - person Andrew Willis; 11.12.2013

Если вы используете netbeans, вы можете использовать плагин отсюда

Плагин

Также вы можете использовать

minifycss

ЮИ

Для онлайн-сжатия

person Pranav C Balan    schedule 11.12.2013

Coffee Script используется для кэширования файлов js на стороне браузера. Он создает один файл js из всех файлов и минимизирует результирующий код.

person Suleman Ahmad    schedule 11.12.2013

вы можете попробовать их для минимизации javascript и css онлайн.

http://minify.avivo.si/#results

http://gtmetrix.com/minify-javascript-and-css.html

http://www.minifycss.com/

person Anil Meena    schedule 11.12.2013