Как стать автором
Обновить

Сжатие JavaScript и CSS на Rails с помощью asset_packager

Время на прочтение2 мин
Количество просмотров574
Часто случается, что делая большой проект в конце концов выходит куча отдельных javascript'овых файлов вроде библиотек, плагинов к ним и прочих. Так же, переодически можно встретить и несколько CSS, которые в основном делаются для удобства восприятия. Так же, по-хорошему, все это дело снабжено рядом комментариев, чтоб потом хоть как-то в этом разобраться.
Благодаря тому, что на Rails development и production версии разделяются, с помощью плагина asset_packager можно наладить автоматический процесс сжатия всех js и всех css файлов в 2 файла с вырезанием всех комментариев.
Т.е. получится, что в development версии у вас будет нормально поддерживаимые скрипты и стили, а в production все будет объединино для ускорения загрузки (п.с. в основном браузеры не поддерживают параллельную загрузку js и css файлов).


Как пользоваться


  1. Устанавливаем плагин:
    script/plugin install sbecker.net/shared/plugins/asset_packager
    или
    script/plugin install git://github.com/sbecker/asset_packager.git
  2. Запускаем «rake asset:packager:create_yml» чтобы сгенерировать конфиг /config/asset_packages.yml в первый раз. В нем описываем какие файлы и в каком порядке объединять (синтаксис — простейший yaml конфиг)
  3. Запускаем «rake asset:packager:build_all» чтоб сгененировать сжатые файлы. Каждый раз, когда вы переписываете конфиг, вам надо запускать задачу опять.


Как работает


Ставите например вызов яваскрпта в вашем layout:
<%= javascript_include_merged 'prototype', 'effects', 'controls', 'dragdrop', 'application', 'foo', 'bar' %>
В девелопмент версии вы получите:







А в продакшене:


Точно так же и со стилями:
Вызов <%= stylesheet_link_merged 'screen', 'header' %> сделает в девелопменте:
/>
/>

А в продакшене:
/>

Удачи в использовании!
Теги:
Хабы:
+11
Комментарии39

Публикации

Изменить настройки темы

Истории

Работа

Ruby on Rails
10 вакансий
Программист Ruby
8 вакансий

Ближайшие события