Задать вопрос

В чем фишка asset pipeline?

Прочитал это, это и это, воодушевился, стал апгрейдить один недоделанный rails-проект, ничего не вышло, у теперь возник ряд как технических вопросов, так и общих, типа так ли asset pipline крут и полезен, как его малюют.


Главный технический вопрос — как asset pipeline заставить работать с compass-ом? Был у меня compass+blueprint в rails 3.0.9, генерил screen.css, print.css. Переношу scss в assets — естественно, компасовские импорты и инклуды не работают. По этому поводу есть issues и alfa-версии компаса, но даже если все включится, то зачем asset pipeline? @include от компаса круче, поскольку их можно (и нужно) добавлять в отдельные классы, а так ли это с встроенным *= require от asset pipeline?


C javascript ситуация совсем непонятная. Зачем ядро jquery и jquery-ui объединять самописными скриптами в один файл? Раньше считалось, что полезно напротив минимизировать трафик путем загрузки общих файлов типа jquery.js с code.google.com. А теперь все в одном файле. Маленький хак в любом контроллере тянет за собой повторную загрузку всех стандартных библиотек, включая jquery(-ui).


Есть одна проблемка, которую хочется решить. Специфичные для страниц javascript-ы я подключаю из вьюх через
<% content_for :js do %>
<%= javascript_include_tag "script1" %>
<%= javascript_include_tag "script2" %>
<% end %>
Но этот блок можно вызвать только один раз, повторные вызовы в разных partial-ах его переписывают. А хотелось бы, чтобы код складывался, да еще и без повторов. Как бы это сделать, может с помощью asset pipeline?


А вообще, какие еще плюсы asset pipeline Вы знаете? Минимизирует автоматом через uglifier, это круто. Еще ruby-переменные можно засовывать прямо в js, это не очень круто, потому что все-таки правильнее отделять код от данных. Что еще?
  • Вопрос задан
  • 3792 просмотра
Подписаться 4 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
sl_bug
@sl_bug
@include от компаса прекрасно работает используя мастер ветку (возможно придется кое-что в конфигах исправить, но это уже на месте смотреть)

>Cпецифичные для страниц javascript-ы я подключаю из вьюх через
А не лучше ли иметь 1 скрипт на все страницы? Но если уж сильно хочется, то генерите еще какой-нибудь другой манифаест (как application.js) и пользуйте разные файлы на разных страницах.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы