Rails 3.1 Pipeline-Exclude Javascript File
Chcę wykluczyć konkretny plik javascript (modernizr) z potoku, ponieważ chcę, aby ładował się oddzielnie.
Chcę załadować Modernizr na początku i resztę mojego javascript na końcu.
Czy jest sposób, aby zrobić przeciwieństwo wymogu w potoku aktywów w 3.1? ie. / align = "left" /
Z góry dzięki.
Adam.
4 answers
Postanowiłem zachować funkcjonalność kół zębatych zmieniając
//= require_tree
Do
//= require_directory .
Dzięki temu sprockets automatycznie ładuje wszystkie pliki w tym samym katalogu, ale nie w żadnych folderach dalej.
To pozwoliło mi przenieść Modernizr.js do folderu assets / javascripts / top i ręcznie załaduj go na górze za pomocą:
<%= javascript_include_tag "top/modernizr" %>
I przenieść
<%= javascript_include_tag "application" %>
Do końca mojej aplikacji.html.plik erb (nad zamykającym znacznikiem body)Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-04-23 20:22:50
Zdaję sobie sprawę, że to stare pytanie, ale Google wysłał mnie tutaj w zeszłym tygodniu, więc nie jest to przestarzałe pytanie. Odpowiedź, którą znalazłem gdzie indziej, to dyrektywa "stub" dla kół zębatych . Więc coś jak
//= require-tree .
//= stub Modernizr
To utrzymuje Modernizr.js z połączonych aktywów. Może być dołączony z własnym tagiem, à la oryginalna odpowiedź.
The Sprockets changelog mówi "stub" został dodany w styczniu 2012, więc nie byłoby dostępne w momencie, gdy to pytanie zostało po raz pierwszy odpowiedział, ale myślę, że teraz to dobra odpowiedź.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-24 02:00:55
Jest to o wiele łatwiejsze, przechodząc do konfiguracji / środowisk / produkcji.plik rb i dodanie następującej linii
config.assets.precompile += %w( modernizr.js )
Wtedy, gdy prekompilujesz swój assets modernizer będzie miał swój własny osobny plik, który możesz użyć w swojej głowie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-09-16 05:47:08
Te odpowiedzi są nieaktualne. Wystarczy przenieść active_admin.css.scss
z app/assets/stylesheets
na vendor/assets/stylesheets
.
Zrób to samo z active_admin.js.coffee
(Przesuń z app/assets/javascripts
do vendor/assets/javascripts
).
Twoje zasoby zostaną załadowane w razie potrzeby i nie będziesz musiał wprowadzać modyfikacji w applications.js
, aby pomieścić active_admin.
To rozwiązanie jest opisane w w tym numerze. Mam nadzieję, że to pomoże.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-17 21:37:45