Существуют ли библиотеки для упаковки и минимизации нескольких файлов CSS и JS в один файл каждый? - PullRequest
6 голосов
/ 11 октября 2011

Согласно высокопроизводительным веб-сайтам O'Reilly (стр. 15-16), настоятельно рекомендуется сделать как можно меньше HTTP-запросов для высокой производительности.Таким образом, есть ли библиотека для объединения нескольких файлов JS в один файл, и библиотека для этого также для CSS?

Для JavaScript у меня сейчас загружено как минимум 4 разные библиотеки, jQuery 1.6.x, несколько плагинов jQuery и один файл JavaScript приложения для логики приложения.У меня также есть 2 CSS-файла, Bootstrap и CSS-файл моего приложения.

Существуют ли инструменты для облегчения этого?Было бы неплохо иметь инструмент, который я мог бы использовать из Python или из Bash (я на Linux) для «компиляции» и минимизации нескольких таблиц стилей CSS.

(Если это возможно как аддон Django, даже лучше [то есть manage.py packify static/bootstrap.min.css static/application.css ...])

Ответы [ 5 ]

7 голосов
/ 11 октября 2011

То, что вы ищете, это конвейер css и javascript.Это становится стандартом для фреймворков для предоставления такого рода инструментов.Например, в Rails 3.1 есть собственный встроенный конвейер ресурсов.

Мало того, что он объединит ваши css и javascripts в один пакет, но также сожмет их для дальнейшего повышения производительности.

К счастью, у django также есть собственный плагин для этого

https://github.com/cyberdelia/django-pipeline

3 голосов
/ 11 октября 2011

Конечно, есть такой инструмент!Это называется webassets .И это прекрасно интегрируется с Django .

функции веб-наборов

  • минимизация (сжатие) CSS и JS
  • МЕНЬШЕ к CSS
  • SASS в CSS
  • компас

и т. Д.

2 голосов
/ 11 октября 2011

Существуют различные методы.Отличный плагин уже упоминается JavierIEH.Но вы можете легко создать его самостоятельно, используя PHP или любой другой язык сервера.

Но вы получите еще больше, если загрузите JQuery и его плагины из API библиотек Google .Он предлагает минимизированную версию многих библиотек.

Преимущество в том, что он не будет использовать ваш сервер.Браузеры будут устанавливать только ограниченное количество одновременных подключений к одному и тому же серверу, поэтому это позволяет вашим пользователям одновременно загружать JQuery и ваш собственный javascript.

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

0 голосов
/ 19 декабря 2013

Проверьте этот скрипт Python.Он не построен на фреймворке и может быть легко интегрирован.

http://github.com/hkasera/minify

Он также минимизирует js и css файлыЗдесь хранятся подробные файлы журналов, иллюстрирующие ошибки и предупреждения.Надеюсь, что это поможет!

0 голосов
/ 11 октября 2011

Если вы можете жить с инструментом PHP, посмотрите CSS-JS-Booster , который содержит в себе несколько хитростей, чем простая минификация. Например, встраивание небольших изображений, указанных в вашем CSS, в CSS (data-uri / mhtml) и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...